Data Science and Machine Learning¶

Property fines of maintenance in Detroid¶

12.12.2023¶


Students: Inigo Susila Uranga, Bohdan Kopćak, Mateusz Sopyła

Exam numbers: 4123873

Teachers : Julia Pahl, Jie Cai, Marina Meireles Pereira

Introduction¶

In the city of Detroit, over 20% of properties are affected by property blight, leading the City to issue tickets to the owners of these parcels as a means of encouraging residents to maintain their properties. Despite this effort, the compliance rate for these blight tickets is alarmingly low. Our approach involves constructing a predictive model to forecast ticket compliance, conducting a thorough analysis of property owners who receive blight tickets, and examining the disparities in compliance among these diverse groups of residents.

Blight fines dataset¶

About the data: https://midas.umich.edu/wp-content/uploads/sites/3/2017/09/understanding-blight-ticket.pdf

Goal¶

The goal of our work is to estimate compliance based of of historical data

Data init¶

In [ ]:
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import matplotlib as mpl
import seaborn as sns
import re
from sklearn.cluster import KMeans
import folium
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split 
from sklearn import metrics
from datetime import date
from six import StringIO  
from IPython.display import Image  
import pydotplus
In [ ]:
# Do not touch me
df_fines = pd.read_csv("fines.csv", sep=',',skiprows=0,skipfooter=1, na_values=None,engine='python')
df_latlons = pd.read_csv("latlons.csv", sep=',', skiprows=0, skipfooter=1, na_values=None,engine='python')
df_addresses = pd.read_csv("addresses.csv", sep=',', skiprows=0, na_values=None,engine='python')
In [ ]:
len(df_fines.index)
Out[ ]:
62492

Data Cleaning¶

We assumed these enumerations:

payment status value assigned
NO PAYMENT APPLIED 0
PARTIAL PAYMENT APPLIED 1
PAID IN FULL 2

disposition value assigned
Not responsible by Dismissal Not responsible
Not responsible by City Dismissal Not responsible
Not responsible by Determination Not responsible
Responsible by Default Responsible
Responsible by Determination Responsible
Responsible by Admission Responsible
PENDING JUDGMENT omitted
SET-ASIDE (PENDING JUDGMENT) omitted

We have also removed all fines where the subject corrected the violation before his hearing, eg. when the case was dismissed.

We have changed compliancy 0/1 values to boolean

In [ ]:
df_fines['payment_status'] = df_fines['payment_status'].map(
    lambda x: 0 if x == 'NO PAYMENT APPLIED'
              else 1 if x == 'PARTIAL PAYMENT APPLIED'
              else 2
    )
In [ ]:
not_responsible_tags = r'Not responsible by Dismissal\
                        |Not responsible by City Dismissal\
                        |Not responsible by Determination'
responsible_tags = r'Responsible by Default\
                    |Responsible by Determination\
                    |Responsible by Admission'
omitted_tags = (r'PENDING JUDGMENT|SET-ASIDE \(PENDING JUDGMENT\)')

# Filter out fines that were not resolved
df_fines = df_fines[df_fines.disposition.str.contains(omitted_tags) == False]

# Change labels to boolean vals
df_fines['disposition'] = df_fines['disposition'].map(
    lambda x:
        "Not responsible" if x in not_responsible_tags
        else "Responsible")
In [ ]:
# Remove fines that were dismissed
df_fines = df_fines[df_fines['disposition'] == "Responsible"]
In [ ]:
# Change 0/1 compliance to boolean
df_fines['compliance'] = df_fines['compliance'].map(
    lambda x:
        False if x == 0.0
        else True)
In [ ]:
# Change violation code to category type
df_fines['violation_code'] = df_fines['violation_code'].astype('category')
In [ ]:
len(df_fines.index)
Out[ ]:
42023
In [ ]:
df_fines.columns
Out[ ]:
Index(['ticket_id', 'agency_name', 'inspector_name', 'violator_name',
       'violation_street_number', 'violation_street_name',
       'violation_zip_code', 'mailing_address_str_number',
       'mailing_address_str_name', 'city', 'state', 'zip_code',
       'non_us_str_code', 'country', 'ticket_issued_date', 'hearing_date',
       'violation_code', 'violation_description', 'disposition', 'fine_amount',
       'admin_fee', 'state_fee', 'late_fee', 'discount_amount',
       'clean_up_cost', 'judgment_amount', 'payment_amount', 'balance_due',
       'payment_date', 'payment_status', 'collection_status',
       'grafitti_status', 'compliance_detail', 'compliance'],
      dtype='object')
In [ ]:
df_fines['mailing_address_str_name'] = df_fines['mailing_address_str_name'].astype(str)
df_fines['violation_street_name'] = df_fines['violation_street_name'].astype(str)
df_fines['violator_name'] = df_fines['violator_name'].astype(str)
In [ ]:
df_fines['ticket_issued_date'] = pd.to_datetime(df_fines['ticket_issued_date'])
df_fines['ticket_year'] = df_fines['ticket_issued_date'].dt.year
df_fines['ticket_month'] = df_fines['ticket_issued_date'].dt.month
df_fines['ticket_day'] = df_fines['ticket_issued_date'].dt.day
df_fines['ticket_day_week'] = df_fines['ticket_issued_date'].dt.day_of_week
In [ ]:
#['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
df_fines = pd.get_dummies(df_fines,columns=['ticket_day_week'])
df_fines = df_fines.rename(columns={'ticket_day_week_0':'isMonday',
                                    'ticket_day_week_1': 'isTuesday',
                                    'ticket_day_week_2':'isWednesday',
                                    'ticket_day_week_3':'isThursday',
                                    'ticket_day_week_4':'isFriday',
                                    'ticket_day_week_5':'isSaturday',
                                    'ticket_day_week_6':'isSunday'})
In [ ]:
df_fines.columns
Out[ ]:
Index(['ticket_id', 'agency_name', 'inspector_name', 'violator_name',
       'violation_street_number', 'violation_street_name',
       'violation_zip_code', 'mailing_address_str_number',
       'mailing_address_str_name', 'city', 'state', 'zip_code',
       'non_us_str_code', 'country', 'ticket_issued_date', 'hearing_date',
       'violation_code', 'violation_description', 'disposition', 'fine_amount',
       'admin_fee', 'state_fee', 'late_fee', 'discount_amount',
       'clean_up_cost', 'judgment_amount', 'payment_amount', 'balance_due',
       'payment_date', 'payment_status', 'collection_status',
       'grafitti_status', 'compliance_detail', 'compliance', 'ticket_year',
       'ticket_month', 'ticket_day', 'isMonday', 'isTuesday', 'isWednesday',
       'isThursday', 'isFriday', 'isSaturday', 'isSunday'],
      dtype='object')
In [ ]:
df_fines['isOwner'] = np.where(df_fines['mailing_address_str_name'].astype(str).str.upper() == df_fines['violation_street_name'].astype(str).str.upper(), 1,0)
df_fines['isOwner'] = np.where(df_fines['mailing_address_str_number'].astype(float) == df_fines['violation_street_number'].astype(float),1,0)
In [ ]:
df_fines[df_fines['isOwner'] == 1]
Out[ ]:
ticket_id agency_name inspector_name violator_name violation_street_number violation_street_name violation_zip_code mailing_address_str_number mailing_address_str_name city ... ticket_month ticket_day isMonday isTuesday isWednesday isThursday isFriday isSaturday isSunday isOwner
7 18735 Buildings, Safety Engineering & Env Department Williams, Darrin Rafee Auto Services L.L.C., RAF 8228 MT ELLIOTT NaN 8228.0 Mt. Elliott Detroit ... 6 16 False False True False False False False 1
8 18733 Buildings, Safety Engineering & Env Department Williams, Darrin Rafee Auto Services L.L.C., RAF 8228 MT ELLIOTT NaN 8228.0 Mt. Elliott Detroit ... 6 16 False False True False False False False 1
14 18978 Buildings, Safety Engineering & Env Department Williams, Darrin TLC Hand Car Wash, a/k/a 9425 VAN DYKE NaN 9425.0 Van Dyke Detroit ... 8 23 True False False False False False False 1
18 18746 Buildings, Safety Engineering & Env Department Williams, Darrin Klenk, Dean 14715 KLENK NaN 14715.0 Klenk Detroit ... 10 7 False False False True False False False 1
21 26846 Buildings, Safety Engineering & Env Department Williams, Darrin Al-Musawi, Doha 16331 WARREN NaN 16331.0 W. Warren Detroit ... 10 13 False False True False False False False 1
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
62436 87032 Department of Public Works Lewis, Velinda Harris, Tonie 19696 OMIRA NaN 19696.0 Omira Detroit ... 8 4 False False False False True False False 1
62452 87040 Department of Public Works Lewis, Velinda Williams-Dann, Myrtis Lee 19127 OMIRA NaN 19127.0 Omira Detroit ... 8 4 False False False False True False False 1
62455 87205 Department of Public Works Bell, Maydell MALKI, SHAMOUN 415 FERNHILL NaN 415.0 FERNHILL DETROIT ... 8 4 False False False False True False False 1
62464 87110 Department of Public Works Lewis, Velinda Agnitch, James J. 19692 OMIRA NaN 19692.0 Omira Detroit ... 8 4 False False False False True False False 1
62476 86384 Department of Public Works Hayes, Billy J MASON, RODNEY M 17144 BIRWOOD NaN 17144.0 BIRWOOD DETROIT ... 8 4 False False False False True False False 1

6385 rows × 45 columns

violator_name clean up¶

This category contains a lot of misspelling of the frequent perpetrators. The data has to be analysed manualy and the discrepancies corrected.

In [ ]:
misspellings = {
    'INVESTMENT, ACORN' : ['INVESTMENT CO., ACORN',
                           'Investment, Acorn',
                           'ACORN INVESTMENT, *',
                           'INVESTMENTS, ACORN',
                           'Acorn Investments, *',
                           'COMPANY, ACORN INVESTMENT',
                           'ACORN INVESTMENTS, *',
                           'CO., ACORN INVESTMENT',
                           'Investment Co., Acorn',
                           'investment, acorn',
                           'INVESTMENT CO, ACORN',
                           'ACORN INVESTMENT CO., .',
                           'Company, Acorn Investment',
                           'ACORN INVESTMENT COMPANY, .',
                           'Co., Acorn Investment',
                           'INVESTMENT COMP., ACORN',
                           'COMPANY, ACORN  INVESTMENT',
                           'ACORN INVESTMENT CO., *',
                           'Co, Acorn Investment',
                           'INVESTMENT CO. , ACORN',
                           'Investment Company, Acorn',
                           'INVESTMENT COMPANY, ACORN',
                           'COMP., ACORN INVESTMENT',
                           'ACORN INVSTM. CO., .',
                           'CO, ACORN INVESTMENTS',
                           'CO, ACORN INVESTMENT',
                           'INVETMENT CO., ACORN',
                           'CO., ACORN  INVESTMENT',
                           'Co., Acorn Investment-',
                           'COMP, ACORN INVERTMENT',
                           'Investment, Acorns',
                           'Investment Co, Acorn',
                           'acorn investment, *',
                           'ACORN INVESMENTS, *',
                           'INNESTMENT, ACORN',
                           'ACORN INVESTMENT, CO',
                           'IVESTMENT, ACORN',
                           'INVESMENT, ACORN',
                           'Acorn Investment, *',
                           'ACORN  INVESTMENTS  CO., .',
                           'c/o ACORN INV., OAK MANAGEMENT',
                           'Investment, Company Acorn',
                           'COMPANY, ACORN   INVESTMENT',
                           'INVESTMENT CO, A CORN',
                           'INVESTMENT CO., A CORN',
                           'INVESTMENT COMPANY, A CORN',
                           'INVESTMENT, A CORN'],

    'BANK, WELLS FARGO' : ['BANK MINNESOTA, WELLS FARGO',
                           'BANK MINNESOTA, WELLS  FARGO',
                           'BANK MINNSOTA, WELL FARGO',
                           'BANK, W ELLS FARGO',
                           'BANK, WELL FARGO',
                           'BANK, WELLS  FARGO',
                           'BANK, WELLS FARGO',
                           'FARGO BANK, WELLS',
                           'FARGO HOME MORTGAGE, WELLS',
                           'FARGO, WELLS',
                           'Fargo Bank, Wells',
                           'MINNESOTA, WELL FARGO BANK',
                           'MINNESOTA, WELLS   FARGO BANK',
                           'WELL FARGO BANK MINNESOTA, .',
                           'WELLS  FARGO  BANKS  MINNESOTA, .'
                           'WELLS FARGO BANK, .',
                           'MINNESOTA, WELLS FARGO BANK,',
                           'BANK, N.A., WELLS FARGO',
                           'BANK  MINNESOTA, WELLS FARGO',
                           'MINNESOTA, WELLS FARGO BANK',
                           'Bank, Wells Fargo',
                           'BANK, NA, WELLS FARGO',
                           'C/O OCWEN FEDERAL BANK, FSD., WELLS FARGO BANK-MINN.',
                           'BANK,NA TRUSTEE, WELLS FARGO',
                           'HOME MORTGAGE INC, WELLS FARGO',
                           'BANK N. A., WELLS FARGO',
                           'WELLS FARGO HOME MTG., INC., .',
                           'for option one mtg., wells fargo bank natl.assoc trustee',
                           'TRUSTEE, WELLS FARGO BANK',
                           'Bank,NA, Wells Fargo',
                           'for option one mtg. loan, wells fargo bank m natl.assoc. trustt',
                           'HOME MORTGAGE, WELLS FARGO',
                           'BANK  MINNESOTA  NA, WELLS FARGO',
                           'MINNESOTA, N.A., WELLS FARGO BANK',
                           'MINNNESOTA, N.A., WELLS FARGO BANK',
                           'BANK,,N.A., WELLS FARGO',
                           'BANK,N.A., WELLS FARGO',
                           'BANK , WELLS FARGO',
                           'WELLS FARGO HOME MORTGAGE, INC, .',
                           'BANK- MINNESOTA, WELLS FARGO',
                           'MORTGAGE, INC., WELLS FARGO  HOME',
                           'MTG INC, WELLS FARGO  HOME',
                           'MINNESOTA, WELLS FARGO',
                           'MORTGAGE, INC, WELLS FARGO HOMES',
                           'BANK-MINNESOTA, WELLS FARGO',
                           'NATIONAL ASSOCIATION, WELLS FARGO  MINNESOTA',
                           'HOME  MORTGAGA, WELLS FARGO',
                           'WELLS FARGO HOME MTG.. INC, .',
                           'C/O OCWEN FEDERAL BANK FSB, WELLS FARGO BANK MINN.',
                           'NATIONAL  ASSC, WELLS FARGO BANK MINNESOTA',
                           'MORTGAGE, INC, WELLS FARGO HOME',
                           'AMERICA INC, WELLS FARGO FINANCIAL',
                           'BANK  N.A, WELLS FARGO',
                           'BANK, N.A, WELLS FARGO',
                           'MORTGAGE INC., WELLS FARGO HOME',
                           'BANK MINN., WELLS FARGO',
                           'WELLS FARGO BANK MINNESOTA, .',
                           'MORTGAGE, INC., WELLS FARGO HOME',
                           'BANK MINNESOTA NATIONAL ASSOC., WELLS FARGO',
                           'BANK OF MINESOTA, WELLS FARGO',
                           'BANK N.A., WELLS FARGO',
                           'MORTGAGE, WELLS FARGO HOME',
                           'GRP/AG REAL ESTATE ASSET TRUST, WELLS FARGO MINNESOTA NATL ASSOC. (TRUSTEE)',
                           'GRP/AG REAL ESTATE ASSET TRUST, WELLS FARGO MINNESOTA NATL.  ASSOC (TRUSTEE)',
                           'MORTGAGE INC, WELLS FARGO',
                           'BANK MINNISOTA, WELLS FARGO',
                           'MINNESOTA, WELLS FARGO  BANK,',
                           'WELLS  FARGO  BANKS  MINNESOTA, .',
                           'WELLS FATGO BANK MINN., .',
                           'option one mtg.loan, wellsfarbo bank , Minnesota natl.assoc.,trustee for'],
    'MANAGEMENT CO., WINGATE' : ['MANAGEMENT CO., WINGATE',
                                 'MANAGEMENT, WINGATE',
                                 'APTS/WINGATE, INDUSTRIAL BUILDING',
                                 'WINGATE, EDDIE & JAMES',
                                 'MANAGEMENT CO,, WINGATE',
                                 'MANAGEMENT CO,., WINGATE',
                                 'WINGATE MGT CO. INC, *',
                                 'WINGATE, WILLIAM',
                                 'Wingate Mgt. Co. Inc., *',
                                 'WINGATE, NEIL',
                                 'MGT. CO, WINGATE',
                                 'Industrial Bldg. Apts/ Wingate, *'],
    'NEW YORK, BANK OF' : ['NEW YORK, BANK OF',
                           'NEW YORK, BANK  OF',
                           'NEW YORK, THE BANK OF',
                           'OF NEW YORK, THE BANK',
                           'BANK OF NEW YORK, .',
                           'NEW YORK , BANK OF',
                           'TRU, BANK OF NEW YORK',
                           'NEW YORK, BNK  OF',
                           'CERTFICATE HOLDERS CWABS2004-1, BANK OF NEW YORK TRUSTEE',
                           'OF NEW YORK, BANK',
                           'NEW YORK, THE BANK  OF',
                           'NEW YORK-TRUSTEE , BANK OF',
                           'NEW YORK TRUST, BANK OF',
                           'New York, The Bank of',
                           'THE BANK OF NEW YORK, *',
                           'NEW YORK, Bank of'],
    'BANK, DEUTSCHE' : ['TRUST CO, DEUTCHE  BANK NATIONAL',
                        'NATIONAL TRUST CO., DEUTSCHE BANK',
                        'NATIONAL TRUST, DEUTSCHE BANK',
                        'NATIONAL TRUST CO, DEUTSCHE BANK',
                        'TRUST CO., DEUTSCHE BANK NATIONAL',
                        'TRUST COMPANY, DEUTSCHE BANK NATIONAL',
                        'COMPANY AMERICAS, DEUTSCHE BANK TRUST',
                        'COMPANY, DEUTSCHE BANK NATIONAL TRUST',
                        "CO, DEUTSCHE BANK NAT'L TRUST",
                        'NATIONAL TRUST COMPANY, DEUTSCHE BANK',
                        'TRUST CO, DEUTSCHE BANK NATIONAL',
                        'NATIONAL  TRUST  CO., DEUTSCHE BANK',
                        'TRUST CO., DEUTSCHE BANK',
                        '& TRUST CO., DEUTSCHE BANK',
                        "TRUST CO, DEUTSCHE BANK NAT'L",
                        'TRUST CO., DEUTSCHE NATIONAL',
                        'DEUTSCHE BANK NATIONAL TRUST C, .',
                        "CO., DEUTSHE BANK NAT'L TRUST",
                        'BANK TRUST CO., DEUTSCHE NATIONAL',
                        'NAT. TRUST, DEUTSCHE BANK',
                        'National Trust Co., Deutsche Bank',
                        'BANK NATIONAL TRUST CO., DEUTSCHE',
                        'TRUST CO, DEUTSHE BANK NATION AL',
                        'TRUST CO AMERICAS, DEUTSCHE BANK',
                        'DEUTSCHE BANK NAT. TRUST CO., .',
                        'NATIONAL TRUST  CO., DEUTSCHE BANK',
                        'F/K/A BANKERS TRUST CO., DEUTSCHE BANK TRUST CO.  AMERICAS,',
                        'NATIONAL  TRUST, DEUTSCHE BANK',
                        'COMPANY, DEUTSCHE BANK TRUST',
                        'TRUST, DEUTSCHE  BANK NATIONAL',
                        'ASS, DEUTSCHE  BANK NATIONAL',
                        'BANK, DEUTSCHE NATIONAL',
                        'Company of the Americas, Deutsche Bank Trust',
                        'TRUST CO, DEUTSCHE  BANK NATIONAL',
                        "NAT'L TRUST CO., DEUTSCHE BANK",
                        'BANK NATIONAL TRUST CO, DEUTSCHE',
                        'BANK  NATIONAL TRUST CO, DEUTSCHE',
                        'C/O AMERE QUEST, DEUTSCHE BANK NATL  TRUST CO',
                        'NATIONAL  TRUST  CO., DEUTSHE BANK',
                        'NAT. TRUST CO., DEUTSCHE BANK',
                        'COMPANY, DEUTSCHE BANK  NATIONAL TRUST',
                        'NATIONAL. CO     , DEUTSCHE BANK',
                        'AMERICAS, DEUTSCHE BANK TRUST COMP.',
                        'DEUTSCHE BANK NATIONAL TRUST , 000000',
                        'DEUTSCHE BANK CO. OF CA, .',
                        'TRUST COMPANY, DEUTSCHE  BANK  NATIONAL',
                        'CO., DEUTSCHE BANK NATIONAL TRUST',
                        'CO, DEUTSCHE BANK NATIONAL TRUST',
                        'bank, deutsche',
                        'NATIONAL  TURST  CO., DEUTSCHE BANK',
                        'TRUST CO., DEUTSHE BANK NATIONAL',
                        'TRUST COMPANY AMERICAS, DEUTSCHE BANK',
                        'TRUST CO, DEUTSCHE BANK NAT'],
    'US Bank National Association' : ['ASSOCIATION, U.S. BANK NATIONAL',
                        'ASSOC, US BANK NATIONAL',
                        'ASSOC., US BANK NATIONAL',
                        'ASSOCIATION, US BANK NATIONAL',
                        'ASSOCIATION, U. S.BANK NATIONAL',
                        'ASSOC., U.S. BANK NATIONAL',
                        'C/O HOMEQ SERVICING CORP., US BANK NATIONAL ASSOC',
                        'C/O HOMEQ SERVICING CORP, US BANK NATIONAL ASSOC',
                        'ASS., US BANK NATIONAL',
                        'ASSOCATION, U.S. BANK NATIONAL',
                        'US BANK NATIONAL ASSOC, *',
                        'ASSOCIATION, US BANK NATIONSAL',
                        'N. A., US BANK',
                        'NA, US BANK',
                        'NATIONAL ASSOC., US BANK',
                        'NATIONAL ASSOCIATION, US BANK',
                        'TRUSTEE, US BANK NATIONAL ASSOCIATION',
                        'US BANH NTNL. ASSN., .',
                        'US BANK NTNL. ASSN., .',
                        'US Bank National Association'],  
    'Lasalle Bank National Association' : [
                        'NATIONAL ASSOCIATION, LASALLE BANK',
                        'ASSOCIATION, LASALLE BANK NATIONAL',
                        'LASALLE BANK, .',
                        'Bank, LaSalle',
                        'Associates, LaSalle Bank National',
                        'NATIONAL ASSOC., LASALLE BANK',
                        'LASALLE BANK MIDWEST, .',
                        'NATIONAL TRUST ASSOCIATION, LASALLE BANK',
                        'National Association, LaSalle Bank',
                        "TRUSTEE, LASALLE BANK NAT'L ASSOC.",
                        'NATIONAL, LASALLE BANK',
                        'BANK NATIONAL ASSOCIATION, LASALLE',
                        'ASSOC., LASALLE BANK NATIONAL',
                        'MIDWEST, LASALLE BANK',
                        'LASALLE, GLENN',
                        'LASALLE BANK NATL. ASSN., .',
                        'BANK, LASALLE',
                        'ASS., LASALLE BANK NATIONAL',
                        'LASALLE BANK NATL. ASSC., .',
                        'LASALLE BANK NATL. ASSCN., .'],
    'BANK, WASHINGTON MUTUAL': [
                        'BANK, WASHINGTON MUTUAL',
                        'MUTUAL BANK, WASHINGTON',
                        'WASHINGTON MUTUAL BANK, .',
                        'TROTT&TROTT,PC, WASHINGTON  MUTUAL BANK',
                        'BANK F.A., WASHINGTON  MUTUAL',
                        'MUTUAL BANK F.A., WASHINGTON',
                        
                        'BANK, WASHINGTON  MUTUAL',
                        'F A, WASHINGTON  MUTUAL BANK',
                        'BANK, F.A., WASHINGTON MUTUAL',
                        'BANK, FA, WASHINGTON  MUTUAL',],                   
    'FELLOWSHIP ESTATES LLC, .' : ['FELLOWSHIP ESTATES, L.L.C. , .',
                                   'FELLOWSHIP ESTATES, L.L.C., .',
                                   'FELLOWSHIP ESTATES, LLC, .'],
    'BANK, WACHOVIA' : ['BANK, WACHOVIA',
                        'Bank NA, Wachovia',
                        'OF DELAWARE, WACHOVIA BANK',
                        'WACHOVIA BANK, .'],
    'BANK, JP MORGAN CHASE' : ['BANK, J  P  MORGAN CHASE',
                               'BANK, J P MORGAN CHASE',
                               'BANK, J.P. MORGAN CHASE',
                               'BANK, JP MORGAN  CHASE',
                               'BANK, JP MORGAN CASE',
                               'BANK, JPMORGAN  CHASE',
                               'BANK, JPMORGAN CHASE',
                               'C-BASS MGT., J. P. MORGAN CHASE BANK',
                               'C-BASS MGT., J.P. MORGAN CHASE BANK',
                               'C/O OCWEN LOAN SERVICE LLC, J.P. MORGAN CHASE BANK',
                               'C/OHOMECOMINGS FINANCIAL NETWO, JP MORGAN CHASE BANK',
                               'C/Ohomecoming financial networ, JP.MORGAN CHASE BANK',
                               'CAPITAL  INC., MORGAN STANLEY ABS',
                               'CAPITAL, MORGAN STANLEY DEAN WITTER',
                               'CHASE  BANK, J P MORGAN',
                               'CHASE BANK TRUSTEE, JP MORGAN',
                               'CHASE BANK, J P  MORGAN',
                               'CHASE BANK, J P MORGAN',
                               'CHASE BANK, J. P. MORGAN',
                               'CHASE BANK, J.P. MORGAN',
                               'CHASE BANK, JP MORGAN',
                               'CHASE BANK, N.A. AS TRUSTEE, J. P. MORGAN',
                               'CHASE BANK-TRUSTEE, JPMORGAN',
                               'CHASE, J P MORGAN',
                               'CHASE, JP MORGAN',
                               'Chase Bank, JP Morgan',
                               'J P MORGAN CHASE BANK, .',
                               'MORGAN CAHSE BANK, JP',
                               'MORGAN CHASE, JP',
                               'TROTT&TROTT P.C., JP MORGAN CHASE BANK IN C/O'],
        'MORTGAGE ELECTRONIC' : ["INC, MORTGAGE ELECTRONIC REG. SYS'S",
                                 "INC, MORTGAGE ELECTRONIC SYS'S",
                                 'MORTGAGE ELECTRONIC  REG. SYS., .',
                                 'MORTGAGE ELECTRONIC REG.SYS.,I, .',
                                 'MORTGAGE ELECTRONIC REGIST., *',
                                 'REG SYS. INC, MORTGAGE ELECTRONIC',
                                 'REG. SYS., INC., MORTGAGE ELECTRONIC',
                                 'REG. SYSTEM, MORTGAGE ELECTRONIC',
                                 'REGISITRATION SYS. INC, MORTGAGE ELECTRONIC',
                                 'REGIST  SYSTEM, MORTGAGE ELECTRONIC',
                                 'REGISTARTION SYSTEM INC., MORTGAGE ELECTRONIC',
                                 'REGISTATION  SYSTEM  INC., MORTGAGE ELECTRONIC',
                                 'REGISTATION SYSTEM INC, MORTGAGE ELECTRONIC',
                                 'REGISTRARION SYSTEM INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION   INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION  INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION  SYSTEM   INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION  SYSTEM  INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION  SYSTEM INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION  SYSTEM, MORTGAGE ELECTRONIC',
                                 'REGISTRATION  SYSTEM,INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SY, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SY., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYM. INC., MORTGAGE ELECTRONIC',
                                 "REGISTRATION SYS'S, INC., MORTGAGE ELECTRONIC",
                                 'REGISTRATION SYS, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYS. INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYS., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM  INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM  INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM,INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM,INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS  INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS, INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS, INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS,INC  , MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS,INC, MORTGAGE ELECTRONIC',
                                 'REGISTRATION SYSTEMS,INC, MORTGAGE ELECTRONICS',
                                 'REGISTRATION SYSTEMS,INC., MORTGAGE ELECTRONIC',
                                 'REGISTRATION, MORTGAGE ELECTRONIC',
                                 'REGRISTRATION SYSTEM INC, MORTGAGE ELECTRONIC',
                                 'Registration Systems, Mortgage Electronic',
                                 'SY, MORTGAGE ELECTRONIC REGISTRATION',
                                 'SYSTEM INC, MORTGAGE ELECTRONIC REAGISTRATION',
                                 'SYSTEM INC., MORTGAGE ELECTRONIC REGISTRATION',
                                 "SYSTEM'S INC, MORTGAGE ELECTRONIC REGIS.",
                                 'SYSTEM, INC, MORTGAGE ELECTRONIC REGISTRATION',
                                 'SYSTEM, MORTGAGE ELECTRONIC  REGISTRAT',
                                 'SYSTEMS INC., MORTGAGE ELECTRONIC',
                                 'SYSTEMS, INC., MORTGAGE ELECTRONIC REGISTRATION',
                                 'SYSTEMS, MORTGAGE ELECTRONIC  REGISTRATION',
                                 'SYSTEMS, MORTGAGE ELECTRONIC REGISTRATI',
                                 'SYSTEMS, MORTGAGE ELECTRONIC REGISTRATION',
                                 'SYSTEMS,INC, MORTGAGE ELECTRONIC REGISTRATION',
                                 'SYSTEMS,INC., MORTGAGE ELECTRONIC REGISTRATION',
                                 
                                 'ELECTRONIC   REGISTATION  SYST, MORTGAGE',
                                 'ELECTRONIC  INC, MORTGAGE',
                                 'ELECTRONIC  REG. SYS.,  MORTGAGE',
                                 'ELECTRONIC MORT. REG. SYSTEM, .',
                                 'ELECTRONIC REG  SYS INC, MORTGAGE',
                                 'ELECTRONIC REGISTRATION , SHD MORTGAGE',
                                 'ELECTRONIC REGISTRATION SYSTEM, MORTGAGE',
                                 'ELECTRONIC REGISTRATION, MORTGAGE',
                                 'ELECTRONIC SYSTEMS, MORTGAGE',
                                 'ELECTRONIC, MORTGAGE',
                                 'JONATHAN EGHMAN, MTG. ELECTRONIC REGISTRATION S IN C/O',
                                 'MORTGAGE ELECTRONIC',
                                 'REGISRATION SYSTEM INC., MTG. ELECTRONIC',
                                 'REGISTRATION  SY, MORTOR ELECTRONIC',
                                 'REGISTRATION SYS. INC, MORTAGE  ELECTRONIC',
                                 'REGISTRATION SYSTEM INC., MORTAGE ELECTRONIC',
                                 'REGISTRATION SYSTEM, INC., MORTGAGE  ELECTRONIC',
                                 'REGISTRATION SYSTEMS, MORTGAGE  ELECTRONIC',
                                 'REGISTRATION SYSTEMS,INC, MORTGAGE  ELECTRONIC',
                                 'REGISTRATION SYSTEMS. INC., MORTGAGE  ELECTRONIC',
                                 'REGISTRATION, MORTGAGE  ELECTRONIC',
                                 'SYSTEM, ELECTRONIC REGISTRATION',
                                 'SYSTEMS INC., MTG. ELECTRONIC REGISTRATION',
                                 'SYSTEMS, INC, ELECTRONIC REGISTRATION',
                                 'SYSTEMS, MTG.ELECTRONIC REGISTRATION',
                                 'TROTT&TROTT ATTY., MTG.ELECTRONIC REGISTRATION SY IN C/O',
                                 'system inc., MTG.Electronic registration',
                                 'system llc, mtg.electronic registration',
                                 'system llc., mtg.electronic registration'],
        'FEDERAL NATIONAL MTG. A.' : ['ASSN, FEDERAL NATIONAL MTG',
                                      'ASSOC, FEDERAL NATIONAL MORTGAGE',
                                      'ASSOC.,  FEDERAL NATIONAL MTG.',
                                      'ASSOC., FEDERAL NATIONAL MORTGAGE',
                                      'ASSOC., FEDERAL NATIONAL MTG.',
                                      'ASSOCIATION, FEDERAL NATIONAL MORTGAGE',
                                      'FEDERAL NATIONAL MORTGAGE ASSO, *',
                                      'FEDERAL NATIONAL MORTGAGE ASSO, .',
                                      'FEDERAL NATIONAL MTG. ASSN., .',
                                      'MORT ASSOCIATES, FEDERAL NATIONAL',
                                      'MORTGAGE  ASS., FEDERAL NATIONAL',
                                      'MORTGAGE  ASSOC, FEDERAL NATIONAL',
                                      'MORTGAGE ASS, FEDERAL NATIONAL',
                                      'MORTGAGE ASSN., FEDERAL NATIONAL',
                                      'MORTGAGE ASSO., FEDERAL NATIONAL',
                                      'MORTGAGE ASSOC, FEDERAL NATIONAL',
                                      'MORTGAGE ASSOC. , FEDERAL NATIONAL',
                                      'MORTGAGE ASSOC., FEDERAL NATIONAL',
                                      'MORTGAGE ASSOCATION , FEDERAL NATIONAL',
                                      'MORTGAGE ASSOCIATION, FEDERAL NATIONAL',
                                      'MORTGAGE, FEDERAL NATIONAL',
                                      'MTG ASSOC., FEDERAL NATIONAL',
                                      'MTG, FEDERAL NATIONAL',
                                      'MTG. ASSOC., FEDERAL NATIONAL',
                                      'Mortgage Assoc., Federal National',
                                      'Mortgage Association, Federal National',
                                      'NORTGAGE ASSOCIATION, FEDERAL NATIONAL'],
            'BANK, HSBC' : ['BANK  USA, HSBC',
                            'BANK (USA), HSBC',
                            'BANK USA, HSBC',
                            'CORP III.HSBC  MTG SERVICES, HOUSEHOLD FINANCE',
                            'CORP III.HSBC MTG SERVICES, HOUSEHOLD FINANCE',
                            'MORTGAGE, HSBC',
                            'USA, HSBC BANK'],
            'SEPTEMBER PROPERTIES' : ['PROPERTIES, SEPTEMBER', 'PROPERTYS, SEPTEMBER', 'SEPTEMBER PROPERTIES, .'],
            'DETROIT NEIGHBORHOOD DEVELOPMENT' : ['CO, DET  NEIGHBORHOOD DEVELOPMENT',
                                    'CO, DETROIT NEIGHBOR HOOD DEVELOPMENT',
                                    'CO, DETROIT NEIGHBORHOOD DEVELOPMENT',
                                    'CORP., DETROIT NEIGHBORHOOD DEVELOPMENT',
                                    'DETROIT NEIGHBORHOOD DEV, NORTHWEST',
                                    'DETROIT NEIGHBORHOOD DEV., *',
                                    'DETROIT NEIGHBORHOOD DEVEL COR, 000000',
                                    'DETROIT NEIGHBORHOOD DEVELOPE, .',
                                    'DETROIT NEIGHBORHOOD DEVELOPME, *',
                                    'DETROIT NEIGHBORHOOD DVL. CORP, *',
                                    'DETROIT NEIGHBORHOOD DVLP., *',
                                    'DETROIT NEIGHBORHOOD SERV., *',
                                    'DETROIT NEIGHBORHOOD, NORTHWEST',
                                    'DEV. CORP., DETROIT NEIGHBORHOOD',
                                    'DEV., DETROIT NEIGHBORHOOD',
                                    'DEVEL0PMENT, DETROIT NEIGHBORHOOD',
                                    'DEVELOPEMENT CO., DETROIT NEIGHBORHOOD',
                                    'DEVELOPEMENT, DETROIT  NEIGHBORHOOD',
                                    'DEVELOPEMENT, DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENR CORPORATION, DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT  CO., DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT  CORP., DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT CO, DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT CO., DETROIT  NEIGHBORHOOD',
                                    'DEVELOPMENT CO., DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT CORP, DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT CORP., NORTHWEST DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT, DETROIT NEIGHBOR',
                                    'DEVELOPMENT, DETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT, NORTHWESTDETROIT NEIGHBORHOOD',
                                    'DEVELOPMENT.CO, DETROIT  NEIGHBORHOOD',
                                    'Detroit Neighborhood Dev. Co. , *',
                                    'Dev. Corp., Cass Corridor Neighborhood',
                                    'Development Co., Detroit Neighborhood',
                                    'Development Corp, Detroit Neighborhood',
                                    'Development Corp., Detroit Neighborhood',
                                    'Development, Detroit Neighborhood',
                                    'NEIGHBOR DEV., DETROIT',
                                    'NEIGHBORHOOD  DEV, NORTHWEST DETROIT',
                                    'NEIGHBORHOOD  DEV., NORTHWEST  DETROIT',
                                    'NEIGHBORHOOD  DEV., NORTHWEST DETROIT',
                                    "NEIGHBORHOOD DEV'T, DETROIT",
                                    'NEIGHBORHOOD DEV, DETROIT',
                                    'NEIGHBORHOOD DEV. CO., DETROIT',
                                    'NEIGHBORHOOD DEV., DETROIT',
                                    'NEIGHBORHOOD DEV., NORTHWEST  DETROIT',
                                    'NEIGHBORHOOD DEV., NORTHWEST DETROIT',
                                    'NEIGHBORHOOD DEVELOPMENT CO, DETROIT',
                                    'NEIGHBORHOOD DEVELOPMENT CORP, *',
                                    'NEIGHBORHOOD DEVELOPMENT, DETROIT',
                                    'NEIGHBORHOOD INC., CORE CITY',
                                    'NEIGHBORHOOD, *',
                                    'NEIGHBORHOOD, CORE CITY',
                                    'NEIGHBORHOOD, INC., CORE CITY',
                                    'NEIGHBORHOOD, NORTHWEST DETROIT',
                                    'NEIGHBORHOOD, SOUTHWEST ALLIANCE FOR',
                                    'NEIGHBORHOODS INC., CORE CITY',
                                    'NEIGHBORHOODS, CORE CITY',
                                    'NORTHWEST DETROIT NEIGHBORHOOD, .',
                                    'development co, detroit neighborhood'],
        'KAY BEE KAY PROPERTIES, .' : ['PROPERTIES L.L.C, KAY BEE KAY',
                                       'PROPERTIES, KAY BEE KAY',
                                       'Properties, LLC, Kay Bee Kay']
                                                    
                                      

    
}

misspellings_inv = {}
for key in misspellings.keys():
    for value in misspellings[key]:
        misspellings_inv[value] = key
In [ ]:
df_fines['violator_name'] = df_fines['violator_name'].map(
    lambda name:
        misspellings_inv[name] if name in misspellings_inv.keys() 
        else name
)
In [ ]:
df_fines.columns
Out[ ]:
Index(['ticket_id', 'agency_name', 'inspector_name', 'violator_name',
       'violation_street_number', 'violation_street_name',
       'violation_zip_code', 'mailing_address_str_number',
       'mailing_address_str_name', 'city', 'state', 'zip_code',
       'non_us_str_code', 'country', 'ticket_issued_date', 'hearing_date',
       'violation_code', 'violation_description', 'disposition', 'fine_amount',
       'admin_fee', 'state_fee', 'late_fee', 'discount_amount',
       'clean_up_cost', 'judgment_amount', 'payment_amount', 'balance_due',
       'payment_date', 'payment_status', 'collection_status',
       'grafitti_status', 'compliance_detail', 'compliance', 'ticket_year',
       'ticket_month', 'ticket_day', 'isMonday', 'isTuesday', 'isWednesday',
       'isThursday', 'isFriday', 'isSaturday', 'isSunday', 'isOwner'],
      dtype='object')
In [ ]:
# df_fine_counter = df_fines.groupby('violator_name').sum()[['balance_due']].sort_values(by='balance_due', ascending=False)
# df_fine_counter.head(20)
In [ ]:
selected = []
query = "KAY BEE KAY"
keys = df_fines['violator_name'].unique()
for key in keys:
    if query.lower() in key.lower():
        selected.append(key)
sorted(selected)
Out[ ]:
['KAY BEE KAY PROPERTIES, .']

Combine the data¶

In [ ]:
df_joint = pd.merge(df_addresses, df_latlons,
                    how='inner', on='address')
df_joint = pd.merge(df_fines, df_joint,
                    how='inner', on='ticket_id')
In [ ]:
len(df_fines.index)
Out[ ]:
42023

Data exploration¶

Header of the DataFrame¶

In [ ]:
df_fines.head(5)
Out[ ]:
ticket_id agency_name inspector_name violator_name violation_street_number violation_street_name violation_zip_code mailing_address_str_number mailing_address_str_name city ... ticket_month ticket_day isMonday isTuesday isWednesday isThursday isFriday isSaturday isSunday isOwner
0 22056 Buildings, Safety Engineering & Env Department Sims, Martinzie INVESTMENT INC., MIDWEST MORTGAGE 2900 TYLER NaN 3.0 S. WICKER CHICAGO ... 3 16 False True False False False False False 0
1 27586 Buildings, Safety Engineering & Env Department Williams, Darrin Michigan, Covenant House 4311 CENTRAL NaN 2959.0 Martin Luther King Detroit ... 4 23 False False False False True False False 0
5 22046 Buildings, Safety Engineering & Env Department Sims, Martinzie KASIMU, UKWELI 6478 NORTHFIELD NaN 2755.0 E. 17TH LOG BEACH ... 5 1 False False False False False True False 0
6 18738 Buildings, Safety Engineering & Env Department Williams, Darrin Deerwood Development Group Inc, Deer 8027 BRENTWOOD NaN 476.0 Garfield Clinton ... 6 14 True False False False False False False 0
7 18735 Buildings, Safety Engineering & Env Department Williams, Darrin Rafee Auto Services L.L.C., RAF 8228 MT ELLIOTT NaN 8228.0 Mt. Elliott Detroit ... 6 16 False False True False False False False 1

5 rows × 45 columns

In [ ]:
df_fines.iloc[1]
Out[ ]:
ticket_id                                                                 27586
agency_name                      Buildings, Safety Engineering & Env Department
inspector_name                                                 Williams, Darrin
violator_name                                          Michigan, Covenant House
violation_street_number                                                    4311
violation_street_name                                                   CENTRAL
violation_zip_code                                                          NaN
mailing_address_str_number                                               2959.0
mailing_address_str_name                                     Martin Luther King
city                                                                    Detroit
state                                                                        MI
zip_code                                                                  48208
non_us_str_code                                                             NaN
country                                                                     USA
ticket_issued_date                                          2004-04-23 12:30:00
hearing_date                                                     5/6/2005 13:30
violation_code                                                       61-63.0600
violation_description         Failed To Secure Permit For Lawful Use Of Buil...
disposition                                                         Responsible
fine_amount                                                                 750
admin_fee                                                                    20
state_fee                                                                    10
late_fee                                                                   75.0
discount_amount                                                               0
clean_up_cost                                                                 0
judgment_amount                                                           855.0
payment_amount                                                            780.0
balance_due                                                                75.0
payment_date                                                      6/2/2005 0:00
payment_status                                                                2
collection_status                                                           NaN
grafitti_status                                                             NaN
compliance_detail                      compliant by late payment within 1 month
compliance                                                                 True
ticket_year                                                                2004
ticket_month                                                                  4
ticket_day                                                                   23
isMonday                                                                  False
isTuesday                                                                 False
isWednesday                                                               False
isThursday                                                                False
isFriday                                                                   True
isSaturday                                                                False
isSunday                                                                  False
isOwner                                                                       0
Name: 1, dtype: object
In [ ]:
#df_fines.corr(method='pearson')

How many fines there are?¶

In [ ]:
len(df_fines.index)
Out[ ]:
42023

Count numbers of fines by violator_name¶

In [ ]:
df_fine_counter=df_fines['violator_name'].value_counts().to_dict()
df_fines.head(10)
df_fine_counter
Out[ ]:
{'INVESTMENT, ACORN': 692,
 'BANK, WELLS FARGO': 156,
 'MORTGAGE ELECTRONIC': 138,
 'DETROIT NEIGHBORHOOD DEVELOPMENT': 131,
 'BANK, DEUTSCHE': 121,
 'MANAGEMENT CO., WINGATE': 62,
 'NEW YORK, BANK OF': 61,
 'BANK, JP MORGAN CHASE': 60,
 'FEDERAL NATIONAL MTG. A.': 59,
 'MILLER, JOHN': 50,
 'SNOW, GEORGE': 49,
 'KRAMER, KEITH': 41,
 'LDHA, BARCLAY': 38,
 'PACE, MICHAEL': 37,
 'STEHLIK, JERRY': 32,
 'ESTATES, EVERGREEN': 31,
 'Lasalle Bank National Association': 30,
 'RICHARDSON, JOHN': 30,
 'US Bank National Association': 29,
 'HUDSON, OTTMAR': 28,
 'VILLAS, GENESIS': 27,
 'ROSEN, NATHAN': 25,
 'COMMONS LDHA LP, CHENE PARK': 25,
 'LEONARD, JACK': 24,
 'KING VILLAGE, ALBERTA W.': 24,
 'BURTON, GERALD': 21,
 'BURRELL, RAYMOND': 21,
 'BURRELL, HELENE': 20,
 'WOLFE, KENNETH': 19,
 'MANAGEMENT, FOREST CITY': 19,
 'DETROIT HOUSING COMMISSION, *': 19,
 'CONSTRUCTION, REX': 19,
 'COLEMAN, HAROLD': 19,
 'GROUP, THE APARTMENT': 18,
 'BANK, WASHINGTON MUTUAL': 18,
 'PROPERTIES, HOSKINS': 18,
 'BUFFINGTON, DERONE': 18,
 'FORIEST, DONALD': 17,
 'FOREST PARK, FRIENDSHIP': 17,
 'APARTMENTS, CARLTON': 17,
 'GARDENS, SAVANNAH': 17,
 'BROYLES, JOE A': 16,
 'BAKEMAN, NORMAN': 16,
 'COMPANY, DETROIT LEASING': 16,
 'BANK, WACHOVIA': 15,
 'FRIENDSHIP FOREST PARK, *': 15,
 'SMITH, LUCILLE': 15,
 'JONES, ALVIN': 15,
 'HUFF, CHERYL': 15,
 'BROOKS, PENCYNTHIE': 15,
 'KANSY, JOSEPH': 15,
 'SOULAR, GEORGE': 14,
 'LANNING, ANTHONY L.': 14,
 'BRIKHO, MAYSOON': 14,
 'LARKINS, DEONE': 14,
 'nan': 14,
 'JACKSON, RAYFORD': 14,
 'APARTMENTS, WESTPARK': 14,
 'TURNBULL, HUGO': 14,
 'TODD, TYRONE': 14,
 'DYER, MARGIE': 14,
 'ROW INC., NOTTINGHAM': 13,
 'CONNER, VICKY': 13,
 'SHIFMAN, ALLEN': 13,
 'ROSE, MAURICE': 13,
 'SAMMUT, ELIZABETH': 13,
 'CALHOUN, ANDREW': 13,
 'MOORE, LEE V': 13,
 'DIXON, ROBERT': 13,
 'PROPERTIES INC., HOSKINS': 12,
 'CHAPMAN, LEON': 12,
 'CORPORATION, 1ST CITY': 12,
 'TREANOR, JOHN': 12,
 'APARTMENTS, TOWN SQUARE': 12,
 'PULLIAM, JAMES': 12,
 'ONE, BANK': 12,
 'JOHNSON, ROBERT': 12,
 'HICKMAN, ERMA': 12,
 'WILLIAMS, SAM': 12,
 'DEMBICKI, JOSEPH': 12,
 'BARNES, JOHN': 11,
 'JACKSON, CARLSON': 11,
 'MANOR, EMBASSY': 11,
 'PAPALE, MARK': 11,
 'ROSSER JR., ERWIN': 11,
 'HOLMES, EDDIE': 11,
 'RUPERT, HENRY': 11,
 'SHORES, TINA': 11,
 'INVESTMENT CO., REX': 11,
 'THOMPSON, PHILLIP': 11,
 'DANIELS, ROBERT': 11,
 'SANTARELLI, MARCO': 11,
 'BROWN, HAZEL': 11,
 'ROBINSON, JOHN': 11,
 'Kramer, Keith': 11,
 'WOODS, SAMUEL': 11,
 'PROPERTIES LLC, CUSIMANO BROS': 10,
 'LAIN, MARY': 10,
 'TOWNHOMES, PALMER COURT': 10,
 'WILSON, BARRY': 10,
 'FENNOY, GWEN': 10,
 'SACHS, RALPH': 10,
 'WILLIAMS, WOODROW': 10,
 'DINATALE, DONALD': 10,
 'Corp., Amurcon': 10,
 'NESBITT, LEVI': 10,
 'FINANCIAL SERVICES, MILLENNIUM': 10,
 'WILLIAMS, GREGORY': 10,
 'L D H A, BARCLAY': 10,
 'FLOYD, GREGORY': 10,
 'KIMBLE, AED': 10,
 'CO. INC., IMPERIAL MGMT': 9,
 'COUTILISH, ARISTIDIES': 9,
 'RAMSEY, EUGENE': 9,
 'DAVIS, REGINALD': 9,
 'SMITH, VINCENT': 9,
 'GORDON, JEANETTE': 9,
 'MOORE, MICHAEL': 9,
 'CUNNINGHAM, BRENDA': 9,
 'TREASURER, WAYNE COUNTY': 9,
 'MANAGEMENT, PREMIER': 9,
 'JORDAN, WILLIE': 9,
 'BEVERLY, LUTHER': 9,
 'GADSON, JAMES': 9,
 'ANDERSON, DONALD': 9,
 'WELLS FARGO BANK, .': 9,
 'JOHNSON, CHRISTOPHER': 9,
 'GADD, DONALD': 9,
 'HOGUE, SHIRLEY': 9,
 'DAVENPORT, ROSA B': 9,
 'WALLACE, RANDOLPH': 9,
 'WERKMEISTER, THOMAS': 9,
 'MEADOWS, FRIENDSHIP': 9,
 'L.D.H.A.L.P., Northlawn Apts.': 9,
 'LOZOYA, RAMON': 9,
 'irwin, john': 9,
 'LITTLEJOHN, WILLIAM D': 9,
 'PROPHET CHURCH, WORD OF THE': 9,
 'WILCOX, DONALD': 9,
 'PRICE, RICHARD': 9,
 'BREWART, WILLIAM': 9,
 'SANDERS, OTIS': 8,
 'COMMISSION, DETROIT HOUSING': 8,
 'FELLOWSHIP ESTATES LLC, .': 8,
 'LUKOWSKI, KAZ': 8,
 'LOWERY, DEON': 8,
 'ENERGY, DTE': 8,
 'DAVIS, ROBERT': 8,
 'MARSH, CAROLYN': 8,
 'CHAPPELL, BARBARA': 8,
 'FREEDMAN, JUDY': 8,
 'INVESTMENT CO, REX': 8,
 'JONES, EDDIE': 8,
 'JACKSON, CLARENCE': 8,
 'MARTIN, NAKISHA': 8,
 'BURRELL, RAYMOND C': 8,
 'BURRELL, RAYMOND C.': 8,
 'LLC, P J U': 8,
 'JACKSON, THEODORE': 8,
 'SNOW, GEORGE A': 8,
 'GREEN III, ALEX': 8,
 'SMITH, JOHN': 8,
 'MANAGEMENT, KEYSTONE': 8,
 'WOODGET, JAMES': 8,
 'LOANS, COUNTRYWIDE HOME': 8,
 'CLARK, KENNETH': 8,
 'MATHEW, GEORGE': 8,
 'M.E.R.S.I., .': 8,
 'CHAMBERS, REGINA': 8,
 'ASSOCIATES, FAIR': 8,
 'HILTON, PATRICK': 8,
 'MURRAY JR., WILLIE': 8,
 'MICHELS, ROBERT': 8,
 'GUTHERY, HELENA': 8,
 'SCOTT, DWIGHT': 8,
 'WILSON, ROY': 8,
 'JOHNSON, JOHN': 8,
 'management, perkins': 8,
 'HOBBS, JAMES': 8,
 'BANK, HSBC': 8,
 'Snow, George': 8,
 'Miller, John': 8,
 'LEASING CO., DETROIT': 8,
 'MCMURRAY, HERMAN': 8,
 'MBONU, JONAS': 8,
 'THOMPSON, LYNN': 8,
 'WHITE, FRANK': 8,
 'GARDNER, MICHAEL': 8,
 'REYNOLDS, GEORGE': 8,
 'HILL, MARZETTE': 8,
 'MONROE, ANTHONY': 7,
 'FOX, CLEMON': 7,
 'ALLEN, ROBERT': 7,
 'BANK, COMERICA': 7,
 'TURNER, JUAN': 7,
 'THOMAS, WILLIE': 7,
 'OUTREACH MINISTRIES, FREE INDEED': 7,
 'KELLY, RALPH': 7,
 'TURNER, ROBERT': 7,
 'ADAMS JR., ROBERT': 7,
 'WILSON, JOSEPH': 7,
 'HINES, RAYMOND': 7,
 'LARSON, ROBERT': 7,
 'CRAWFORD, WILLIE': 7,
 'MOORE, MARY': 7,
 'GOROSH, MARTIN': 7,
 'TATARIAN, MATTHEW': 7,
 'WILLIAMS, VICTOR': 7,
 'MURRAY, JAMES': 7,
 'DAVIS, JOHN': 7,
 'VAN LUVEN, MARION': 7,
 'HAISHA, ADIL': 7,
 'WILSON, JAMES': 7,
 'MARSHALL, GLORIA': 7,
 'KINGSLEY, THOMAS': 7,
 'IPOSU, STEPHEN': 7,
 'THOMPSON, MARILYN': 7,
 'JOHN, LAWRENCE': 7,
 'HEWITT, RAYMOND': 7,
 'COUNTS, ALMA': 7,
 'KARMO, JOSEPH': 7,
 'GROUP, THE FORMIDABLE': 7,
 'MCLAURIN, FRED': 7,
 'WHITE, WALTER': 7,
 'LLC, PJU': 7,
 'RISING, LOUISE': 7,
 'SMITH, JOSEPH': 7,
 'DONOVAN, MICHAEL': 7,
 'JANZEWSKI, ROBERT': 7,
 'MITCHELL, RICHARD': 7,
 'MGT CO., LOCKWOOD': 7,
 'COTTINGHAM, ROGER': 7,
 'WILLIAMS, EDDIE': 7,
 'HOMES LDHA, PROJECT': 7,
 'KIRBY, TRACY': 7,
 'COOPERATIVE, RALPH BUNCHE': 7,
 'ALAM, ASAAD': 7,
 'SALEM, AHMED': 7,
 'GROSS, JASON': 7,
 'moloian, aramis': 7,
 'AIGORO, SHAMS': 7,
 'DAVIS, SIDNEY': 7,
 'WEINER, SAMUEL': 7,
 'BARLOW, LINDA': 7,
 'PROPERTIES, A & M': 7,
 'LLC, ANATOLE': 7,
 'LACLEAR, JOYCE': 7,
 'MITCHELL, CLARENCE': 7,
 'COHEN, DAN': 7,
 'JOHNSON, LARRY': 7,
 'RIVERS, RONALD': 7,
 'YAZBECK, GHASSAN': 7,
 'SYED, NAVEED': 7,
 'WILLIAMS, EDWIN L': 7,
 'COLE, PHILLIP': 7,
 'JONES, DEBORAH': 7,
 'TINNON, CURTIS': 7,
 'WILLIAMS, MARCUS': 7,
 'MICHELS, ROSE MARIE': 7,
 'BANK, STANDARD FEDERAL': 6,
 'MOUNT, HERBERT': 6,
 'WILLIAMS, JAMES': 6,
 'JONES, EDWARD': 6,
 'HASENAU, JAMES': 6,
 'COX, BESSIE': 6,
 'INVESTMENT II, GREAT LAKES': 6,
 'DEVELOPMENT LLC, DAVIES': 6,
 'BROWN, HORACE': 6,
 'DAYNE, MICHAEL F.': 6,
 'WILLIAMS, WILLIE': 6,
 'THOMPSON, DAVID': 6,
 'CLARK, JAMES': 6,
 'STEELE JR., HOWARD': 6,
 'PROPERTIES, TREBUR': 6,
 'EDISON, DETROIT': 6,
 'MOORE, SHAWN': 6,
 'DUNLAP, DEBRA': 6,
 'DAVIS, REGINALD CLYDE': 6,
 'BROWN, ANNIE': 6,
 'BOYD, NARCISUS': 6,
 'MOSLEY, JACOB': 6,
 'GOLDBERGER, MEYER': 6,
 'SMITH, WILLIAM': 6,
 'DAYNE, MICHAEL': 6,
 'PROPERTIES LLC, JIMCO': 6,
 'Schwall, Edward': 6,
 'HAMMOUD, RAMZI': 6,
 'TANKSLEY, SYLVIA': 6,
 'JONES, JIMMIE': 6,
 'TURNBULL, HUGO K': 6,
 'KAMEL, CAROLE': 6,
 'BUCHANAN, RODNEY': 6,
 "INC., AMY'S": 6,
 'PILOT, ARNEE': 6,
 'NOWAKOWSKI, JOSEPH': 6,
 'REID, DWAYNE': 6,
 'TUGGLE, LESTER': 6,
 'LAVANT, BRYANT': 6,
 'HEATH, GARFIELD': 6,
 'HENDERSON, MARY': 6,
 'BRADLEY, TROY': 6,
 'YOUSIF, MIKE': 6,
 'ARMSTRONG, RAYMOND': 6,
 'ADAMS, AARON': 6,
 'HARDY, RONALD': 6,
 'GARY, CHRISTIAN': 6,
 'MCGEE, MICHAEL': 6,
 'COMMONS, CHENE PARK': 6,
 'DETROIT MERCY, UNIVERSITY OF': 6,
 'WOOD, LOWELL': 6,
 'MCCLINTON, ALFRED': 6,
 'REX CONSTRUCTION, *': 6,
 'JOHNSON, WILLIAM': 6,
 'Stehlik, Jerry': 6,
 'FETWIE, SIRAJ': 6,
 'SANDERS, MARCUS': 6,
 'TURNER, WALTER': 6,
 'PARKS, DERRICK': 6,
 'BASS, MARCUS': 6,
 'AYZIN, BORIS': 6,
 'PIIR, PETER': 6,
 'MACK, IRENE': 6,
 'MATHEW, MATHEW': 6,
 'BATCHELOR, GWENDOLYN': 6,
 'REYNOLDS, LELDON': 6,
 'CARPENTER, CLIFFORD': 6,
 'TAYLOR, ISAAC': 6,
 'WEBSTER, BERNARD': 6,
 'TENBROECK, CHARLES': 6,
 'KAGE, RICHARD M': 6,
 'MICHALAK, CHRIS': 6,
 'SELPH, WILLIE': 6,
 'SMITH, BILLY': 6,
 'INVESTMENT LLC, MOGHUL': 6,
 'HILL, DONALD': 6,
 'JOHNSON, BERNARD': 6,
 'NORTON, ERIC': 6,
 'BROOKS, JOHN': 6,
 'STEWART, ANNIE': 6,
 'WRIGHT, JAMES': 6,
 'TRICE JR., BENJAMIN': 6,
 'JOHNSON, WALTER': 6,
 'PEARSON, BECKWITH': 6,
 'HYDER, ALI': 6,
 'HUDSON, DORA': 6,
 'ROSMAN, STEPHEN': 6,
 'ROGERS, EUGENE': 6,
 'WILLIAMS, RUBY': 6,
 'JOHNSON, BRENDA': 6,
 'MARSHALL, DOROTHEA': 6,
 'CUNNEGAN, EMMANUEL': 6,
 'HONEY, MILDRED': 6,
 'FERRY STREET, INN ON': 6,
 'STEHLIK, HAROLD': 6,
 'WADE, ELIZABETH': 6,
 'HARRISON, MILTON': 6,
 'BASSETT, ANNIE': 6,
 'SMITH, SANDRA': 6,
 'PROPERTY TRUST, BAYVIEW FINANCIAL': 6,
 'WELBORNE, RAYMOND': 6,
 'WOFFORD, GEORGE': 6,
 'PROPERTIES, CEK': 6,
 'AHMADIEH, DANIELLE': 6,
 'SLAUGHTER, CORNELIUS': 6,
 'SMITH, KING': 6,
 'STAMPS, ANGELA': 6,
 'WALKER, ARTHUR': 6,
 'RICHARDSON, WALTER': 6,
 'GIBSON, BRENDA': 6,
 'HUNTER, LAMONT': 6,
 'HOLLOWELL, RONALD': 6,
 'CICERONE, GUY': 6,
 'ANDERSON, DERRICK': 6,
 'THOMAS, CHRISTINE': 6,
 'JOHNSON, NANCY': 6,
 'JARVIS, DAVID': 6,
 'Village, Medical Center': 6,
 'HERNANDEZ, JESUS': 6,
 'BANKS, ROBERT': 6,
 'DAVIS, KENNETH': 6,
 'PERKINS, DENNIS': 6,
 'SMITH, LARRY': 6,
 'LIAGKOS, GEORGE': 6,
 'WILLIAMS, ERIC': 6,
 'HARRIS, ANTHONY': 6,
 'WILHITE, CARLOS': 6,
 'SINGLETON, JOSEPH': 6,
 'FUGA, MARK': 6,
 'WYTRWAL, JOSEPH': 5,
 'WHITFIELD, EUNICE': 5,
 'JOHNSON, BARBARA': 5,
 'BROWN, WILLIAM': 5,
 'JONES, JOHN': 5,
 'NUNN, EDNA': 5,
 'WILLIAMS, CLARENCE': 5,
 'MANAGEMENT CO., MERRILL': 5,
 'DAVIS, WESLEY': 5,
 'THOMAS, FRED': 5,
 'WILLIAMS, COLLETTE': 5,
 'PROPERTIES, WESTPOINTE': 5,
 'OWE, AYODELE': 5,
 'SCOTT, FREDERICK': 5,
 'MOSLEY, WILLIAM': 5,
 'BRAND, MARSHA': 5,
 'LIPARI, JOSEPH': 5,
 'PROPERTIES LLC, NORTH HILLS': 5,
 'SMITH, MICHAEL': 5,
 'HARRINGTON, MADESTER': 5,
 "O'NEAL, HENRY": 5,
 'GRICE, MYRTHA': 5,
 'BANK, MIDFIRST': 5,
 'BUTLER, KENNETH': 5,
 'MAGNAN, MARC': 5,
 'FOX JR., ANDREW': 5,
 'HARGROVE, PAULETTE': 5,
 'ADAMS, LINDA': 5,
 'PERRY, LARRY': 5,
 'UPSHAW, JOE': 5,
 'BORG, WILLIAM': 5,
 'MINOR, FREDDI': 5,
 'LIADI, SULEMAN': 5,
 'NASSER, SHARIF': 5,
 'ROBINSON, GEORGE': 5,
 'Phoenix Homes, *': 5,
 'PHARMACY INC, CVS': 5,
 'JACKSON, WILLIE': 5,
 "MORRIS, D'ANDRA": 5,
 'TRIPP, HERBERT': 5,
 'MCNARY, WILLIAM': 5,
 'MANAGEMENT, WISE CHOICE': 5,
 'CORP, LORBE': 5,
 'BOJI, JEBRAIL': 5,
 'CONWAY, TERENCE': 5,
 'CARSON, IDA': 5,
 'BRAXTON, MARGIE': 5,
 'BALL, MARIA': 5,
 'CRAWFORD, SARAYA': 5,
 'LEWIS, MELVINE': 5,
 'CHAPMAN, KENNETH': 5,
 'MCAFEE, JERRY': 5,
 'SIMMONS, CATHERINE': 5,
 'EVANS, ELLIOT': 5,
 'THOMAS, DWIGHT': 5,
 'SHANNON, LUKE': 5,
 'CHICOREL, ALBERT': 5,
 'PHARMACY, CVS': 5,
 'MARTIN, CATHY': 5,
 'Hasenau, James': 5,
 'GRIFIN, OLLIE': 5,
 'DEVLOPMENT, OLYMPIA': 5,
 'AARON, WALTER': 5,
 'BURRELL, CLIFTON': 5,
 'LEON, ELIAS': 5,
 'FAITH MINISTRIES, MOUNTAIN OF': 5,
 'Smith, Lucille': 5,
 'PITTS, RONALD': 5,
 'MABEY, JOHN': 5,
 'MCCULLOCH, CAROL': 5,
 'LATTA, MARY': 5,
 'MCGLAUN, PRENTIS': 5,
 'JOHNSON, JEVON': 5,
 'BLACKMAN, ERNEST': 5,
 'SCOTT, GROVER': 5,
 'gadd, donald': 5,
 'CONDOMINIUMS, PARC LAFAYETTE': 5,
 'Chebli, Zeinab': 5,
 'ANDERSON, CURTIS': 5,
 'Properties Inc., Hoskins': 5,
 'L.D.H.A., BARCLAY': 5,
 'POWELL, GLADYS': 5,
 'LONGLEY, JUDITH': 5,
 'KARPINSKI, EDWARD': 5,
 'MANAGEMENT, ASHER': 5,
 'WOODS, WILLIAM': 5,
 'ROBINSON, DAVID': 5,
 'STEHLIK, JERRY E': 5,
 'JENNINGS, ANGELA': 5,
 'DUPIN JR., THEOPLIS': 5,
 'LEAK, DOLORES': 5,
 'CHAMBERS, RANDOLPH': 5,
 'ROBINSON, FURMAN': 5,
 'COCHRAN, EUGENE': 5,
 'FAWAZ, ALI': 5,
 'BUSH, RHONDA': 5,
 'SMITH, ERNESTINE': 5,
 'CHRISTIAN CHURCH, DEEPER LIFE': 5,
 'FISHER, HAVIT': 5,
 'JENKINS, SHEILA': 5,
 'mathew, mathew v': 5,
 'MANNING, WILLIE': 5,
 'CURRIE, JACKIE': 5,
 'BROWN, HENRY': 5,
 'TINSLEY, KEITH': 5,
 'PROPERTIES LLC, CUSIMANO BROS.': 5,
 'TOLBERT, DARNELL': 5,
 'RUTILIO, LOZANO SANCHEZ': 5,
 'MARTIN, ROBIN': 5,
 'MATTHEWS, JAMES': 5,
 'MANAGEMENT LLC, COVER': 5,
 'PROPERTIES, S & D': 5,
 'WILLIAMS, LEROY': 5,
 'ROBINSON, WILLIE': 5,
 'GRIFFIN, WILLIAM': 5,
 'KNOX, CHAD': 5,
 'PROPERTIES, AMERICA': 5,
 'FAKHOURY, KAMLEH': 5,
 'CHAMBERS, ROBERT': 5,
 'BAKER, JOHN': 5,
 'MASSEY, JEROME': 5,
 'GREEN, JOHN': 5,
 'Apartments, Fairview Manor': 5,
 'PROPERTIES, CITY PLACE': 5,
 'Soular, George': 5,
 'VANDERWOUDE, ROBERT W.': 5,
 'Daoud, Emmanuel Y': 5,
 'JOHNSON, JAMES': 5,
 'ROBERTS, ANTHONY': 5,
 'JOHNSON, ANDREW': 5,
 'BROWN, JAMES': 5,
 'ABDALLAH, HASSAN': 5,
 'PALMER, ANTHONY': 5,
 'THOMAS, SHIRLEY': 5,
 'SHAW, GRAY PALMER': 5,
 'PROPERTIES, REGAL': 5,
 'FILMORE, MARKUS': 5,
 'NORRIS JR., JOSEPH': 5,
 'FIELD, RICHARD': 5,
 'WILLIAMS, DEXTON': 5,
 'BATES, DEANNA': 5,
 'PANEK, WAYNE': 5,
 'PRENTISS, TYRONE': 5,
 'SMITHERMAN, WENDELL': 5,
 'PARK, FRIENDSHIP FOREST': 5,
 'GREGORY, WESLEY': 5,
 'GRIFFITH, MARIE': 5,
 'thornton, victor james': 5,
 'LATIMER, GRADY': 5,
 'BROWN, CHARLES': 5,
 'CORP, NEVADA': 5,
 'CHILDS, JASON': 5,
 'PROPERTIES, AMERICAN': 5,
 'GURLEY, DAVID': 5,
 'WILSON, BENJAMIN': 5,
 'GREEN, FRANK': 5,
 'BELL, HUBERT': 5,
 'HUDSON, RAYMOND': 5,
 'JERMISON, CHARLES': 5,
 'LTD, MORTGAGE': 5,
 'JOHNSON, ANTHONY': 5,
 'SCHESTER, ALLAN': 5,
 'HUNTER, DIANE': 5,
 'COMPANY, J & L': 5,
 'DAVIS, MARY': 5,
 'THOMPSON, NATHANIEL': 5,
 'LESSER, MARTHA': 5,
 'CRUSE, JEFFERY': 5,
 'FISHER, CYNTHIA': 5,
 'HOYE, DIANE': 5,
 'JACKSON, ANDREW': 5,
 'APARTMENTS, RYAN COURT': 5,
 'HENDRICKSON, WILLIAM': 5,
 'SMITH, REGINALD': 5,
 'SCOTT, BARRINGTON': 5,
 'GROUP LLC, SANDERS': 5,
 'BERGER, BERNARD': 5,
 'LOWMAN, KENNETH': 5,
 'KOREJWO, KENNETH': 5,
 'cole, pamela marie': 5,
 'CAMPBELL, MALINDA': 5,
 'PROPERTIES, T R J': 5,
 'BIVINS, ANNIE': 5,
 'SMITH, JAMES': 5,
 'MARTELLA, FRANK': 5,
 'BOWERS, EVELYN': 5,
 'SMITH, JESSE': 5,
 'MANAGEMENT, ONE': 5,
 'APARTMENTS LLC, LANSING': 5,
 'ANDERSON, LARNZIA': 5,
 'WILKINS, SEAN': 5,
 'CORP., STOCKER': 5,
 'HAZIME, HUSSEIN': 5,
 'GUITON, DOROTHY': 5,
 'NEW  YORK, BANK OF': 4,
 'RICHBOW, RUTH': 4,
 'WILLIAMS, KENNETH B.': 4,
 'NIXON, STEPHANIE': 4,
 'SMITH, WILLIE': 4,
 'SELPH JR., WILLIE': 4,
 'DERKACZ, JAMES': 4,
 'EVERETT, VYLANDRUS': 4,
 'CAMAS, VICTOR': 4,
 'SMITH, JERRY': 4,
 'REARDON, JAMES': 4,
 'GRICE, CURTIS E': 4,
 'DEVELOPMENT, HOUSING & URBAN': 4,
 'WELLS, DORIS': 4,
 'ASSOCIATES, DAVENPORT': 4,
 'PITTS, KEVIN': 4,
 'LAPERRIERE, JOANNE': 4,
 'COLLINS, JOE L': 4,
 'GROGGINS, ANITA': 4,
 'COOK, GEORGE': 4,
 'REALITY, INC, SHEARD': 4,
 'JAMES, DONALD': 4,
 'AYOOLA, MARK': 4,
 'BROWN, SALONA': 4,
 'SIMMONS, DAVID': 4,
 'TORANDO, VICTORIA': 4,
 'SEEVERS, ELIZABETH': 4,
 'BANNO, SHAMIL MATI': 4,
 'ROSS, JAMES': 4,
 'SHANKLE, BILLY': 4,
 'BROWN, MORRIS': 4,
 'smith, joe l': 4,
 'MORGAN, YVETTE': 4,
 'ANYANONU, ANDREW': 4,
 'KELLY, MICHAEL': 4,
 'DANIELS, RUSSELL': 4,
 'YANG, REGINE C': 4,
 'ALEMARI, BAHAA': 4,
 'ALASHKAR, SAFAA': 4,
 'ESTATE CO., PHOENIX REAL': 4,
 'DILLARD, AARON': 4,
 'KOURANI, HASSAN': 4,
 'BROWN, MARIE': 4,
 'PROPERTIES INC., AMERICAN': 4,
 'WILCOX, MARY': 4,
 'ADAMS-BEAL, LYNORA J': 4,
 'SWANN, DONALD': 4,
 'BEAL, ROBERT': 4,
 'GREGORY, WESLEY M.': 4,
 'SANDERS, VIOLA V': 4,
 'PROPERTIES, DARTMOUTH': 4,
 'NOYES, THOMAS': 4,
 'HALL, EULIA': 4,
 'WILLIAMS, IRVEN': 4,
 'LUCAS, RICHARD': 4,
 'WHITLEY, JOHN': 4,
 'GRADY III, ISHAM': 4,
 'RICE, DANNY': 4,
 'HARDAWAY, WILLIE': 4,
 'EARLY, DAISY': 4,
 'PENDELL, THERESA': 4,
 'NELSON, OTIS': 4,
 'ARNETT, ROBIN': 4,
 'FOX, PETER': 4,
 'WEBB, ARTIS': 4,
 'SORRELL, MELODY': 4,
 'LOPEZ, MARIA': 4,
 'THOMAS, JAMES': 4,
 'BROWN, GREGORY': 4,
 'NEDAB, VINCENT': 4,
 'MARTIN, ULYSSES': 4,
 'BOLLING, ARTHUR': 4,
 'HEAD, EUGENE': 4,
 'COLLINS, JIMMY': 4,
 'SIMPSON, EUNICE': 4,
 'BESTAS, IRENE B.': 4,
 'WASHAM, DEREK': 4,
 'SIMPSON, VIVIAN': 4,
 'HUMPHREY, JAMES': 4,
 'ERWIN, REFONDA': 4,
 'KENNEDY, RUBY': 4,
 'ygiesias, eduardo': 4,
 'LLC, JCL': 4,
 'SHELBY, STANLEY': 4,
 'CURENTON, JAMES': 4,
 'RYAN, EDDIE': 4,
 'HENSON, JARRAL': 4,
 'THOMPSON, CALVIN': 4,
 'SMITH, PERCY': 4,
 'HOUFF, NICHOLAS': 4,
 'THOMAS, JOSEPH': 4,
 'YEAGER, JAMES': 4,
 'FORBES, CHARLES': 4,
 'TAYLOR, JOANN': 4,
 'MANAGEMENT, LLC., SELECT PROPERTY': 4,
 'WIGGINS, ELDER': 4,
 'ASSOCIATES, PRIMCO': 4,
 'HUGHES, ALLEN': 4,
 'ABUNAB, NAFEH': 4,
 'INVESTMENT CO, ELM': 4,
 'MOK, GARY': 4,
 'INVESTMENTS, RE': 4,
 'GUTHERY, HELENA ODOM-': 4,
 'PROPERTIES LLC, BRIDGEPORT': 4,
 'TERRELL, JAMES': 4,
 'KNIGHT, MICHAEL': 4,
 'MYERS, BOBBY': 4,
 'HUSSEIN, SAYED': 4,
 'MANNING, ALVIN': 4,
 'GLENN, EVELYN': 4,
 'WILLIAMS, OTIS': 4,
 'GEORGE, FRED': 4,
 'BROWN, MARGARET': 4,
 'IRELAND, KEVIN': 4,
 'COLE JR., PHILLIP': 4,
 'INVESTMENT, SUNRISE': 4,
 'PRATHER, ROBERT': 4,
 'FUNDING INC., KEY MORTGAGE': 4,
 'Amurcon Corp., *': 4,
 'SPENCER, WILLIE': 4,
 'VELLA, EMANUEL': 4,
 'TOWNSEL, RODNEY': 4,
 'RAMIREZ, ALEJANDRO': 4,
 'HOUSING AGENCY, LIVING TRUTH TEMPLE': 4,
 'BRYANT, ADAM': 4,
 'MCCALL-FOSTER, MARY': 4,
 'GENTRIS, BRUCE': 4,
 'MURRAY SR., JAMES': 4,
 'FERGUSON, BRANDI': 4,
 'CAMPBELL, WILLIAM': 4,
 'KNIER, DAVID E': 4,
 'REAL ESTATE, ASPEN': 4,
 'VENSON, NORMAN': 4,
 'MORTGAGE, OPTION ONE': 4,
 'DIMONDS LLC, K.D.': 4,
 'RENO, REGINALD': 4,
 'HENDERSON, LYDELL': 4,
 'JAMES, TINA': 4,
 'HOME LLC, COZY': 4,
 'FLAGG, DOLORES': 4,
 'STONE, BOBBY': 4,
 'HARRIS, FRANKIE': 4,
 'TURNER, CHARLES': 4,
 'FOSTER, RONALD': 4,
 'INCORP., RACKLIN & GROSS': 4,
 'BROWN, GEORGE': 4,
 'DEVELOPMENT CO., NC WHORTER': 4,
 'CHRISTIAN MUSIC, INTERNATIONAL': 4,
 'GRANT, JOHN': 4,
 'MAU, GARY': 4,
 'KELLY, MIKE': 4,
 'PETERSON, JAMES': 4,
 'SHELBY, STAN': 4,
 'MCCUISH, JAMES': 4,
 'CHUNG, REYNOLD': 4,
 'SCARBER, PRISCILLA': 4,
 'CHANG, DANG': 4,
 'COX, EVELYN': 4,
 'PLAZA LLC, SCHAEFER': 4,
 'SNIPES, SUZANNE': 4,
 'VALLEY APTS, ROUGE': 4,
 'AKINMUSURU, JOSEPH': 4,
 'JOHNSON, HENRY': 4,
 'WEST, WILLIAM': 4,
 'PARHAM, FRED': 4,
 'PHELPS, EDWARD': 4,
 'PRYOR, THOMAS': 4,
 'COLE JR., PHILIP': 4,
 'HARRISON, SHEILA': 4,
 'PROPERTIES, IRON STREET': 4,
 '., ROBADON': 4,
 'BABCOCK, ISSAC': 4,
 'WEHMEYER, DOUGLAS J': 4,
 'SEMMA, JOHN': 4,
 'WILLIAMS, CYNTHIA': 4,
 'RENTALS, SETH': 4,
 'DIXON, CLETIS': 4,
 'DABISH INC., MARK': 4,
 'WOODS, TONYA': 4,
 'Jones, John': 4,
 'PROPERTIES LLC, GRECO': 4,
 'JOHNSON, PATRICIA': 4,
 'SLOMINSK, DEREK J': 4,
 'MATHEWS, HARVEY': 4,
 'REALTY, ADAMS': 4,
 'HENDERSON, DOUGLAS': 4,
 'DAVIS, TERRY': 4,
 'MARSH, WILLIAM': 4,
 'ATISHA, NAJIB': 4,
 'GREEN, LAWRENCE': 4,
 'SEPTEMBER PROPERTIES': 4,
 'DOLPHIN, MICHAEL': 4,
 'NEWMAN, BRENDA': 4,
 'PROPERTIES, FISHER': 4,
 'CHENET, LUCILLE': 4,
 'DATT, DEVIN': 4,
 'BURGESS, ROSEMARY': 4,
 'DENNIS, CHARLES': 4,
 'Ramsey, Eugene': 4,
 'LEVON, BRUCE': 4,
 'MAYS, GARY': 4,
 'OROSZ, THEODORE': 4,
 'SMITH, ANDRE': 4,
 'HINES, LONNIE': 4,
 'TEMPLE, LIVING TRUTH': 4,
 'SHAMOON, BEHNAM': 4,
 'WOODROW, MYREE': 4,
 'LEWIS, WILLIE': 4,
 'THOMAS, ANNIE': 4,
 'JONES, ROBERT': 4,
 'REESE, EMANUEL': 4,
 'FRAZIER, TYRONE': 4,
 'ASSOC., KAY-LEE': 4,
 'LOCKETT, WALTER': 4,
 'ALGORO, SHAMS': 4,
 'HARRIS, ROBERT': 4,
 'TEAMER, DIRK': 4,
 'LONGSTREET, CHARLES': 4,
 'MUHAMMAD, MICHAEL': 4,
 'RIVERS, MANUEL': 4,
 'YARBROUGH, BARTEE': 4,
 'ROBERTS, GORDON': 4,
 'MORRIS, ROBERT': 4,
 'CINTRON, FELIX': 4,
 'JACKSON, JOHN': 4,
 'INC., SUNRISE PROPERTIES': 4,
 'RIVERA, JOSE L': 4,
 'DELEEUW, MARJORIE': 4,
 'FAKHOURY, JACK': 4,
 'COUTILISH, ART': 4,
 'EDWARDS, DAVID L': 4,
 'SIMS, KIMBERLY': 4,
 'LIPTON, IRV': 4,
 'WILLIAMS, ROBERT': 4,
 'KNIGHT, CHARLOTTE': 4,
 'NOBLE, LINDA': 4,
 'WILLIAMS, BEVERLY': 4,
 'MCGRAW, DANNY': 4,
 'ISABEL, JOHN': 4,
 'WILLIAMS, TYRONE': 4,
 'PETERSON, TONI': 4,
 'MGT. CO., LOCKWOOD': 4,
 'CROOM, JUAN': 4,
 'JONES, CALVIN': 4,
 'MOORE, DAVID': 4,
 'FUNDING, MIDWEST EXPRESS': 4,
 'MOSELEY, GLENDA': 4,
 'MANAGEMENT, S & J': 4,
 'Richardson, John': 4,
 'STEWART JR., ROY': 4,
 'MIGLIORATI, GARY': 4,
 'PROPERTIES, FAIRWAY': 4,
 'BENNETT, GEORGE': 4,
 'INVESTMENTS, BER CARS': 4,
 'LIPSCOMB, REGINALD': 4,
 'INSURANCE, LA': 4,
 'ATTEE, GERALD': 4,
 'SOWA, RICHARD': 4,
 'ARCHER, RAYMOND': 4,
 'LYSON, MATTHEW W': 4,
 'HASKA, WILLIAM': 4,
 'DANTZLER, KENNETH': 4,
 'KALTENBACH, MARTIN': 4,
 'JOHNSON, CHARLES': 4,
 'DRUMMOND, JEANNIE': 4,
 'NEELY, THOMAS': 4,
 'CHARLEY, EUGENE': 4,
 'MANAGEMENT CO., SUNSHINE': 4,
 'DUBINSKY, STEVE': 4,
 'PROPERTIES LLC, CUSIMANO BROTHERS': 4,
 'HACHEM, DIAB': 4,
 'JORDAN, KENNETH': 4,
 'WILLIAMS, ROBERT D': 4,
 'SOISIOGU, IKE': 4,
 'system, nissi': 4,
 'BYRON, MIRLEAN': 4,
 'EVANS, ELLIOTT': 4,
 'OWENS, PEARL': 4,
 'BAINS, BALJIT': 4,
 'Treanor, John': 4,
 'HEARD, JOHN': 4,
 'CHANCELLOR, JOHN': 4,
 'BRYANT, KEVIN': 4,
 'Fennoy, Gwen': 4,
 'STEPANENKO, WALTER': 4,
 'KUYKENDALL, DOUGLAS': 4,
 'ALLEN, MELVIN': 4,
 'INVESTORS, T & T': 4,
 'SINE, EARL': 4,
 'DAVIS, ROSALIND': 4,
 'CAINES, DENNIS': 4,
 'INC., BRALEN': 4,
 'WILLIAMS, DAISY': 4,
 'ABRAHAM, NUNU': 4,
 'RESCUE MISSION, DETROIT': 4,
 'DEMARTIN, DEAN': 4,
 'HARDEN, BARBARA': 4,
 'CODY, KENNETH': 4,
 'QUATES, CLAYTON': 4,
 'TERRY, JAMES': 4,
 'WRIGHT, HELEN': 4,
 'PEOPLES, MICHAEL': 4,
 'WILLIAMS, CORNELIUS': 4,
 'TAYLOR III, URIAH': 4,
 'schredder, charles': 4,
 'LEONARD, JACK A.': 4,
 'LEVON, BRUCE M': 4,
 'MASSEY, ROBERT': 4,
 'RUPERT, HENRY L.': 4,
 'pugh, darius': 4,
 'YORK, BANK OF NEW': 4,
 'SELLERS, JOE': 4,
 'FOSTER, ROY': 4,
 'HIGH, ANTONE': 4,
 'BAKER, DONNA': 4,
 'Savaya, Simon': 4,
 'MORTGAGE CORP., FEDERAL HOME LOAN': 4,
 'ROBERTS, JAMES': 4,
 'KENDRICK, JULIUS': 4,
 'COFFEY, RESHON': 4,
 'JACKSON, CAROLYN': 4,
 'JENKINS, FLOREEN': 4,
 'LOGAN, BARBIE': 4,
 'SENTINNELL, SHANNELL': 4,
 'Yazbeck, Ghassan': 4,
 'WALKER, DENNIS': 4,
 'T. Dabish & Associates, *': 4,
 'BRINCAT, BRYAN': 4,
 'PROPERTIES, HERMETIAN': 4,
 'HUMPHREY, KENNETH': 4,
 'GODBOLD, BUELAH': 4,
 'MITCHELL, TERRENCE': 4,
 'LEVY, IRA': 4,
 'linse, james': 4,
 'REAL ESTATE, PHOENIX': 4,
 'RIZKULLAH, BASIM': 4,
 'MARSHALL, SHERILYNN': 4,
 'SMITH, JESSIE': 4,
 'ENTERPRISES INC, ALEXIS': 4,
 'HILL, DAVID': 4,
 'JACKSON, SANDELL': 4,
 'BURNETT, DARLISA': 4,
 'THOMAS, CYNTHIA': 4,
 'HUNTER, TODD': 4,
 'WILLIAMS, LANAYE': 4,
 'MAGEE, GEORGE': 4,
 'JENKINS, JERRY': 4,
 'BOYD, TOYIA': 4,
 'HALL, PERCY': 4,
 'STONE, DAVID': 4,
 'PINCHEM, MICHAEL': 4,
 'SULLIVAN, GWENDOLYN': 4,
 'JOHNSON, CYRIL': 4,
 'DUPIN, THEOPLIS': 4,
 'THOMAS, SEAN': 4,
 'HUNTER, KIM': 4,
 'KAY BEE KAY PROPERTIES, .': 4,
 'BENEDICT, CONNIE': 4,
 'adams, raymond william': 4,
 'SMITH, RALPH': 4,
 'THOMAS, DARRYL': 4,
 'JOHNSON, SHARON': 4,
 'BLACKWELL, GLORIA': 4,
 'ASSOCIATES, MARLEN': 4,
 'BUFFINGTON, ODIS': 4,
 'PARKS, CONSTANCE': 4,
 'Ball, Gary': 4,
 'AUGURSON, J & B': 4,
 'CONSULTING, GRIFF': 4,
 'BROWDER, VAUGHAN': 4,
 'JOHNSON, MARC': 4,
 'JONES, WILLIAM': 4,
 'GROUP, INC., ABN AMRO MORTGAGE': 4,
 'PROPERTIES INC., TREBUR': 4,
 'CORP., AMURCON': 4,
 'PATTERSON, GUY': 4,
 'REGISTER, DERRICK': 4,
 'RICKS, QUINCY': 4,
 'WALKER, AIMEE': 4,
 'GARCIA, CATALINA': 4,
 'LEE, GERALD': 4,
 'BAZZI, HASSA': 4,
 'GATES, GEORGETTE': 4,
 'APARTMENTS LLC, GARDEN COURT': 4,
 'ROBINSON, DOROTHY': 4,
 'FETTERS, HOPE': 4,
 'GOODMAN, ANNIE': 4,
 'PICKETT, OLA M.': 4,
 'SWANIGAN, EDDIE': 4,
 'DINOFF, DAN': 4,
 'MADDOX, ROBERT': 4,
 'GREEN, GWENDOLYN': 4,
 'THOMAS, CHERYL': 4,
 'ZAGHIR, NADA': 4,
 'PATTAH, CALVIN': 4,
 'CORBELL, STANLEY': 4,
 'MARSHALL, BOBBIE F': 4,
 'JUDNICH, ROBERT': 4,
 'BRICK CO., HISTORIC': 4,
 'Salem, Ahmed': 4,
 'COPELAND, RONALD': 4,
 'REAL ESTATE CO., PHOENIX': 4,
 'PAYMON, MARY': 4,
 'BOWLSON, JAMARE': 4,
 'DETROIT LLC, RAC': 4,
 'OF AMERICA, MORTGAGE CORP': 4,
 'PULLIAM, MARY': 4,
 'MANAGEMENT INC., BLEVINS PROPERTY': 4,
 'HUFFMAN, PATRICIA': 4,
 'DAVIS, VERONICA': 4,
 'CUREATHERS, CLAUDINE': 4,
 'ONWURZURIKE, PHID': 4,
 'WHITED, DANNY': 4,
 'HICKS, GREGORY': 4,
 'MURRAY, MELVIN': 4,
 'WIDEMAN, DENNIS': 4,
 'CORPORATION, CHASE MANHATTAN MORTGAGE': 4,
 'RIGGINS, RUTH': 4,
 ...}

Counts of most common fine types¶

In [ ]:
#Getting the different values and descriptions
numberOfTimes = df_fines['violation_description'].value_counts()
number = pd.DataFrame({'description':numberOfTimes.index,'times':numberOfTimes.values}).head(n=15) #e just want the first 15 because are the most relevant
plt.scatter(number['description'],number['times'])
plt.xticks(number['description'], rotation=-90)
for i, row in number.iterrows():
    plt.text(row['description'], row['times']+600, s= str(row['times']))
plt.show()
No description has been provided for this image

Which streets have most of the fines?¶

In [ ]:
df_fine_counter_by_street=df_fines['violation_street_name'].value_counts().to_dict()
df_fine_counter_by_street
##len(df_fine_counter_by_street)
Out[ ]:
{'SEVEN MILE': 845,
 'MCNICHOLS': 682,
 'LIVERNOIS': 447,
 'EVERGREEN': 380,
 'FENKELL': 303,
 'JOY RD': 299,
 'WARREN': 290,
 'EIGHT MILE': 264,
 'PURITAN': 254,
 'GRAND RIVER': 251,
 'SCHAEFER': 244,
 'PLYMOUTH': 230,
 'GRAND BLVD': 227,
 'WYOMING': 222,
 'GRATIOT': 219,
 'CHICAGO': 216,
 'STOUT': 214,
 'FORRER': 212,
 'SUSSEX': 204,
 'PLAINVIEW': 203,
 'STOEPEL': 201,
 'WINTHROP': 198,
 'VAN DYKE': 191,
 'OUTER DRIVE': 186,
 'PATTON': 184,
 'STAHELIN': 182,
 'MANSFIELD': 181,
 'MEYERS RD': 180,
 'WOODWARD AVE': 179,
 'FIELDING': 179,
 'FAUST': 179,
 'HARPER': 177,
 'SANTA ROSA': 174,
 'VAUGHAN': 173,
 'HEYDEN': 171,
 'CLEMENTS': 169,
 'ST MARYS': 169,
 'MARK TWAIN': 168,
 'AUBURN': 166,
 'ASHTON': 165,
 'DAVISON': 163,
 'GREENFIELD': 162,
 'NORTHLAWN': 158,
 'WARD': 156,
 'GRANDVILLE': 156,
 'MINOCK': 155,
 'RUTHERFORD': 150,
 'SCHOOLCRAFT': 149,
 'APPOLINE': 143,
 'TIREMAN': 142,
 'MENDOTA': 140,
 'MANOR': 139,
 'PIERSON': 139,
 'ASBURY PARK': 138,
 'INDIANA': 136,
 'JEFFERSON': 136,
 'HAZELWOOD': 136,
 'ARCHDALE': 135,
 'GREENVIEW': 134,
 'METTETAL': 133,
 'CHERRYLAWN': 130,
 'HARTWELL': 129,
 'PINEHURST': 129,
 'JAMES COUZENS': 129,
 'BURT RD': 127,
 'CHALMERS': 125,
 'ROSEMONT': 125,
 'EUCLID': 122,
 'SORRENTO': 122,
 'PRAIRIE': 122,
 'LAHSER': 121,
 'WHITCOMB': 120,
 'KENTUCKY': 120,
 'ROBSON': 118,
 'BIRWOOD': 117,
 'CHEYENNE': 117,
 'CONANT': 116,
 'LAUDER': 116,
 'WISCONSIN': 116,
 'MACK': 116,
 'DEXTER': 114,
 'WILFRED': 113,
 'MEMORIAL': 113,
 'FERGUSON': 112,
 'OHIO': 112,
 'ROSELAWN': 112,
 'TRINITY': 111,
 'KENTFIELD': 111,
 'CORTLAND': 110,
 'MONICA': 109,
 'MONTROSE': 109,
 'FULLERTON': 108,
 'GREENLAWN': 108,
 'HUBBELL': 108,
 'ARTESIAN': 108,
 'WOODMONT': 108,
 'CLAIRMOUNT': 107,
 'LITTLEFIELD': 107,
 'CHENE': 106,
 'COYLE': 105,
 'GRAND': 105,
 'CENTRAL': 105,
 'BEACONSFIELD': 104,
 'FLANDERS': 103,
 'TYLER': 100,
 'WESTWOOD': 100,
 'VIRGINIA PARK': 99,
 'NOTTINGHAM': 99,
 'VERNOR': 96,
 'FORT ST': 96,
 'FREELAND': 95,
 'HELEN': 94,
 'LINWOOD': 93,
 'WESTBROOK': 93,
 'STEEL': 92,
 'MT ELLIOTT': 92,
 'ABINGTON AVE': 91,
 'SCHOENHERR': 91,
 'LAKEWOOD': 90,
 'MARLOWE': 89,
 'BRAILE': 89,
 'GLENFIELD': 89,
 'TUXEDO': 89,
 'RUNYON': 87,
 'BENTLER': 87,
 'MOROSS': 86,
 'NEWPORT': 86,
 'PREVOST': 86,
 'ST LOUIS': 86,
 'STRATHMOOR': 85,
 'TULLER': 85,
 'PENROD': 84,
 'LYNDON': 83,
 'BRACE': 83,
 'FENMORE': 83,
 'BUENA VISTA': 83,
 'WHITTIER': 82,
 'BILTMORE': 82,
 'ILENE': 82,
 'MICHIGAN AVE': 81,
 'ASHLAND': 81,
 'RUTLAND': 80,
 'ELMHURST': 80,
 'PIEDMONT': 78,
 'WESTPHALIA': 78,
 'TACOMA': 78,
 'ALTER': 76,
 'HICKORY': 76,
 'STATE FAIR': 76,
 'LENOX': 74,
 'ORLEANS': 74,
 'JOHN R': 73,
 'STANSBURY': 73,
 'TERRY': 72,
 'SOUTHFIELD': 71,
 'HULL': 71,
 'MOENART': 70,
 'HARDING': 70,
 'LONGACRE': 69,
 'CANTON': 68,
 'WILDEMERE': 68,
 'GRANDMONT': 68,
 'SYRACUSE': 68,
 'HOUSTON-WHITTIER': 68,
 'CALVERT': 68,
 'MARX': 68,
 'AMERICAN': 67,
 'PHILADELPHIA': 67,
 'ARDMORE': 67,
 'PASADENA': 66,
 'CLOVERLAWN': 65,
 '14TH ST': 65,
 'BLOOM': 64,
 'EASTLAWN': 64,
 'MORANG': 64,
 'WEBB': 64,
 'CHELSEA': 62,
 'GILCHRIST': 62,
 'MCDOUGALL': 62,
 'ANGLIN': 62,
 'WARWICK': 62,
 'ALCOY': 60,
 'CEDARGROVE': 60,
 'CRANE': 59,
 'GLASTONBURY': 59,
 'ROCKDALE': 59,
 'FAIRPORT': 59,
 'LINDSAY': 59,
 'MAIDEN': 58,
 'WAYBURN': 58,
 'KELLY RD': 58,
 'GLYNN CT': 57,
 'IRVINGTON': 57,
 'PREST': 57,
 'MANNING': 57,
 'BELVIDERE': 57,
 'COLUMBUS': 56,
 'BRENTWOOD': 56,
 'BUCKINGHAM': 56,
 'KILBOURNE': 56,
 'CADILLAC SQUARE': 55,
 'ST ANTOINE': 55,
 'CHALFONTE': 55,
 'PELKEY': 55,
 'HOLCOMB': 54,
 'LAKEPOINTE': 54,
 'RICHTON': 54,
 'GUILFORD': 54,
 'LAKEVIEW': 54,
 'ALBION': 54,
 'WEST PARKWAY': 54,
 'LESLIE': 54,
 'BUFFALO': 54,
 'WASHBURN': 52,
 'DRESDEN': 52,
 'MADDELEIN': 52,
 'EVANSTON': 51,
 'MURRAY HILL': 51,
 'DOLPHIN': 51,
 'BURLINGAME': 51,
 'BALFOUR': 51,
 'BEWICK': 50,
 'RUSSELL': 50,
 'WHITHORN': 50,
 'LAWNDALE': 50,
 'GABLE': 50,
 'BARLOW': 50,
 'GALLAGHER': 50,
 'PEMBROKE': 50,
 'GLADSTONE': 50,
 'MITCHELL': 49,
 'WAVERLY': 49,
 'SEWARD': 49,
 'TURNER': 49,
 'KERCHEVAL': 49,
 'MAPLERIDGE': 49,
 'VINEWOOD': 49,
 'MONTCLAIR': 48,
 'MONTE VISTA': 48,
 'MILITARY': 48,
 'DREXEL': 48,
 'FISCHER': 48,
 'LONGVIEW': 48,
 'ALBANY ST': 47,
 'COPLIN': 47,
 'SPRINGWELLS': 47,
 'OMIRA': 47,
 'CHAPEL': 47,
 'SECOND': 47,
 'KENDALL': 47,
 'FINDLAY': 47,
 'FIELD': 47,
 'OAKFIELD': 47,
 'GOULBURN': 47,
 'MACKAY': 46,
 'GRIGGS': 46,
 'GLENDALE': 46,
 'WALTHAM': 46,
 'MARTINDALE': 45,
 'TEPPERT': 45,
 'LINNHURST': 45,
 'TROESTER': 45,
 'TRACEY': 45,
 'PINGREE': 45,
 'EASTWOOD': 45,
 'HOLLYWOOD': 45,
 'LA SALLE BLVD': 44,
 'LOTHROP': 44,
 'QUINCY': 44,
 'TAYLOR': 44,
 'JOANN': 44,
 'ALMA': 44,
 'ELMIRA': 44,
 'FORDHAM': 44,
 'HOOVER': 44,
 'CARLIN': 43,
 'CARTER': 43,
 'GODDARD': 43,
 'MONTEREY': 43,
 'PARK GROVE': 43,
 'BRYDEN': 43,
 'LAFAYETTE': 43,
 'DICKERSON': 42,
 'ATKINSON': 42,
 'FENELON': 42,
 'HAVERHILL': 42,
 'SEYMOUR': 41,
 'MANISTIQUE': 41,
 'MARLBOROUGH': 41,
 'LEMAY': 41,
 'ELLSWORTH': 41,
 'NOVARA': 41,
 'LESURE': 41,
 'HASSE': 41,
 'CHRYSLER': 41,
 'BELMONT': 41,
 'HARLOW': 41,
 'WOODHALL': 41,
 'IROQUOIS': 41,
 'FLEMING': 41,
 'SNOWDEN': 41,
 'GREYDALE': 41,
 'HAMBURG': 41,
 'CANFIELD': 40,
 'PROMENADE': 40,
 'BLAINE': 40,
 'CORBETT': 40,
 'TOWNSEND': 40,
 'FENTON': 40,
 'SARATOGA': 40,
 'ST AUBIN': 39,
 'THIRD': 39,
 'DECATUR': 39,
 'DEAN': 39,
 'YOUNG': 39,
 'LONYO': 39,
 'PILGRIM': 39,
 'STRASBURG': 38,
 'BEAVERLAND': 38,
 'CAMPBELL': 38,
 'ELMDALE': 38,
 'HAYES': 38,
 'JUNCTION': 38,
 'LOUISIANA': 38,
 'LUMPKIN': 38,
 'ANNOTT': 37,
 'LAWTON': 37,
 'FAIRFIELD': 37,
 'ALLENDALE': 37,
 'DEVONSHIRE': 37,
 'STURTEVANT': 37,
 'RIOPELLE': 37,
 'BAYSIDE': 37,
 'KEYSTONE': 37,
 'LAMPHERE': 36,
 'LAWRENCE': 36,
 'CALDWELL': 36,
 'COMMONWEALTH': 36,
 'FRANKFORT': 36,
 'CADIEUX': 36,
 'BEATRICE': 36,
 'NEVADA': 35,
 'CAMDEN': 35,
 'GREINER': 35,
 'ETHEL': 35,
 'CHATSWORTH': 35,
 'IVANHOE': 35,
 'SAVANNAH': 35,
 'MARTIN': 35,
 'FAIRCREST': 35,
 'MUIRLAND': 35,
 'VICKSBURG': 34,
 'SEEBALDT': 34,
 'CONNER': 34,
 'TARNOW': 34,
 'LAMONT': 34,
 'BRADFORD': 34,
 'CASPER': 33,
 'FERRY': 33,
 'KLINGER': 33,
 'WOODBINE': 33,
 'JANE': 33,
 'LIBERAL': 33,
 'TRUMBULL': 33,
 'COURVILLE': 33,
 'GREELEY': 33,
 'JUSTINE': 32,
 'RADEMACHER': 32,
 'PICKFORD': 32,
 'BURGESS': 32,
 'KENSINGTON': 32,
 'PACKARD': 32,
 'BURNS': 32,
 'ROCHELLE': 32,
 'JOSEPH CAMPAU': 32,
 'ALEXANDRINE': 32,
 'BEDFORD': 32,
 'HIGHLAND': 31,
 'CASS': 31,
 'HAWTHORNE': 31,
 'WASHINGTON BLVD': 31,
 'WINSTON': 31,
 'FOREST': 31,
 'SHIELDS': 31,
 'SALEM': 31,
 'ROSA PARKS BLVD': 31,
 'MORAN': 31,
 'BLACKSTONE': 31,
 'CRUSE': 30,
 'EDSEL': 30,
 'OAKMAN BLVD': 30,
 'CHATHAM': 30,
 'STOTTER': 30,
 'CASCADE': 30,
 'VOTROBECK DR': 30,
 'WADE': 30,
 'ANDOVER': 29,
 'ALGONQUIN': 29,
 'DWYER': 29,
 'ARLINGTON': 29,
 'BELAND': 29,
 'TOLEDO': 29,
 'ROSSINI DRIVE': 29,
 'GARLAND': 29,
 'DACOSTA': 29,
 'CARSON': 29,
 'WOODMERE': 28,
 'COLLINGWOOD': 28,
 'CLARENDON': 28,
 'GRANDY': 28,
 'HURLBUT': 28,
 'TELEGRAPH': 28,
 'BRAMELL': 28,
 'FARMBROOK': 28,
 'ROWE': 28,
 'ROBINWOOD': 28,
 'GREEN': 28,
 'MARGARET': 28,
 'BAYLIS': 28,
 'BALDWIN': 27,
 'PENNSYLVANIA': 27,
 'SEYBURN': 27,
 'CHAREST': 27,
 'LAPPIN': 27,
 'BROADSTREET': 27,
 'OAKLAND': 27,
 'GRIXDALE': 27,
 'BINDER': 27,
 'NAVY': 27,
 'MT VERNON': 26,
 'LARKINS': 26,
 'EWALD CIRCLE': 26,
 'EDISON': 26,
 'OREGON': 26,
 'CAMERON': 26,
 'SANFORD': 26,
 'BROADWAY': 26,
 'SAN JUAN': 26,
 'LARNED': 26,
 'REVERE': 26,
 'SCOTTEN': 26,
 'BEECHWOOD': 26,
 'FAIRVIEW': 26,
 'YOSEMITE': 25,
 'PETOSKEY': 25,
 'THADDEUS': 25,
 '24TH ST': 25,
 'MAYFIELD': 25,
 'QUINN': 25,
 'FRENCH RD': 25,
 'RIVARD': 25,
 'PALMER': 25,
 'SEMINOLE': 25,
 'WYKES': 25,
 '30TH ST': 25,
 'RADNOR': 25,
 'CARRIE': 25,
 '28TH ST': 25,
 'MCCLELLAN': 24,
 'CONLEY': 24,
 'GRISWOLD': 24,
 'FREDERICK': 24,
 'GLENWOOD': 24,
 'NEFF': 24,
 'BURNSIDE': 24,
 'WABASH': 24,
 'WHITNEY': 24,
 'BAGLEY': 24,
 'ROSEDALE CT': 24,
 '15TH ST': 23,
 '25TH ST': 23,
 'SHERWOOD': 23,
 'HAZLETT': 23,
 'PHILIP': 23,
 'CABOT': 23,
 'CONCORD': 23,
 'RACINE': 23,
 'SPRING GARDEN': 23,
 'CICOTTE': 23,
 'HARVARD RD': 23,
 'MCGRAW': 23,
 'GREENDALE': 23,
 'BRINGARD DR': 23,
 'LUMLEY': 23,
 'RATHBONE': 22,
 'CARLISLE': 22,
 '23RD ST': 22,
 'LIDDESDALE': 22,
 'HANNA': 22,
 'KNODELL': 22,
 'VANCOUVER': 22,
 'LENORE': 22,
 'EASTBURN': 22,
 'DESOTO': 22,
 'HOGARTH': 22,
 'PARKER': 22,
 'MAXWELL': 22,
 'MOUND': 22,
 'YELLOWSTONE': 22,
 'ROSEMARY': 22,
 'HEREFORD': 22,
 'BENITEAU': 21,
 'BOSTON BLVD': 21,
 'KENILWORTH': 21,
 'DERBY': 21,
 'BRUSH': 21,
 'WOODROW': 21,
 'PRINCETON': 21,
 'SOMERSET': 21,
 'LANE': 21,
 'CAHALAN': 20,
 'YACAMA': 20,
 'CAVALRY': 20,
 'KEATING': 20,
 'COVENTRY': 20,
 'HAMPSHIRE': 20,
 'CORAM': 20,
 'DEACON': 20,
 'CHENLOT': 20,
 'ROHNS': 20,
 'LANNETTE': 20,
 'CASGRAIN': 20,
 'CHOPIN': 20,
 'LILAC': 20,
 'CROCUSLAWN': 20,
 'BUHR': 20,
 'WILSHIRE': 20,
 'WOODROW WILSON': 20,
 'BEAUBIEN': 20,
 'MAPLEWOOD': 19,
 'SANTA BARBARA': 19,
 'MAINE': 19,
 'ALGONAC': 19,
 'LOG CABIN': 19,
 'WORMER': 19,
 'SHERIDAN': 19,
 'WILLIS': 19,
 'WHITMORE RD': 19,
 'LAMOTHE': 19,
 'GILBERT': 19,
 'DORIS': 19,
 'MONTANA': 19,
 'EXETER': 19,
 'BLUEHILL': 19,
 'HEALY': 18,
 'RYAN': 18,
 'BURNETTE': 18,
 'WILLETTE': 18,
 'HANCOCK': 18,
 'CARDONI': 18,
 'ROCHESTER': 18,
 '16TH ST': 18,
 '17TH ST': 18,
 'MCKINNEY': 18,
 'WARRINGTON': 18,
 'ALGER': 18,
 'FLORIDA': 18,
 'CLIFF': 18,
 'PARK': 18,
 'ST CLAIR': 18,
 'GRAYTON': 18,
 'TRENTON': 18,
 'HOLMUR': 18,
 'EPWORTH': 18,
 'FARNSWORTH': 17,
 'DANBURY': 17,
 'LEE PL': 17,
 'HAGUE': 17,
 'SENATOR': 17,
 'RIVERVIEW': 17,
 'LILLIBRIDGE': 17,
 'ELECTRIC': 17,
 'SPENCER': 17,
 'LA SALLE GARDENS': 17,
 'AUGUST': 17,
 'MORRELL': 17,
 'WOODINGHAM': 17,
 'CECIL': 17,
 'GRAYFIELD': 17,
 'DIX': 16,
 'ROXBURY': 16,
 'LIEBOLD': 16,
 'VAN COURT': 16,
 'DUMFRIES': 16,
 'COOPER': 16,
 'OTSEGO': 16,
 'BLACKMOOR': 16,
 'GARTNER': 16,
 'TRAVERSE': 16,
 'INVERNESS': 16,
 'INGLIS': 16,
 'LANSING': 16,
 'ANNABELLE': 16,
 'PACIFIC': 16,
 'KENNEBEC': 16,
 'EDMORE DR': 16,
 'AVON': 16,
 'INFANTRY': 16,
 'MEDBURY': 16,
 'WATERMAN': 16,
 'COLLEGE': 16,
 'ELMER': 16,
 'OLDTOWN': 16,
 'PINEWOOD': 16,
 'HOUGHTON': 16,
 'FERDINAND': 16,
 'BEGOLE': 16,
 'MINNESOTA': 15,
 'MELVILLE': 15,
 'BRADEN': 15,
 'ELIZABETH': 15,
 'APPLETON': 15,
 'FAIRMOUNT DR': 15,
 'LONGWORTH': 15,
 'YORKSHIRE': 15,
 'DRAGOON': 15,
 'RIDGEWOOD': 15,
 'HAZELRIDGE': 15,
 'GRAY': 15,
 '35TH ST': 15,
 'HOMER': 15,
 'SUNSET': 15,
 'DUBOIS': 15,
 'COOLEY': 15,
 'PEARL': 15,
 'FERRIS': 15,
 'FERRY PARK': 15,
 'REGENT DR': 14,
 'THREE MILE DR': 14,
 'MAPLELAWN': 14,
 '31ST ST': 14,
 'MARSTON': 14,
 'LODEWYCK': 14,
 'WHITFIELD': 14,
 'CHARLEVOIX': 14,
 'CURTIS': 14,
 'HILLSBORO': 14,
 'SHARON': 14,
 'WEXFORD': 14,
 'VIRGIL': 14,
 'GENESSEE': 14,
 'ROSSITER': 14,
 'MARYLAND': 14,
 'LONGFELLOW': 14,
 'UNIVERSITY PL': 14,
 'WOODLAND': 14,
 'MAJESTIC': 14,
 'PARKSIDE': 14,
 'SARENA': 14,
 'DANIELS': 14,
 'KIRBY': 14,
 'WHITTAKER': 14,
 'THATCHER': 14,
 'CAPITOL': 14,
 'HARRELL': 14,
 'POE': 13,
 'SANTA CLARA': 13,
 'HOLMES': 13,
 'ANDERDON': 13,
 'WESTMINSTER': 13,
 'COVINGTON': 13,
 'CRAWFORD': 13,
 'LELAND': 13,
 'CHANDLER PARK DR': 13,
 'SUNDERLAND RD': 13,
 'BUCHANAN': 13,
 'NARDIN': 13,
 'CHARLEMAGNE': 13,
 'FITZPATRICK': 13,
 'OAKWOOD': 13,
 'WESSON': 13,
 'LINSDALE': 13,
 'COLFAX': 13,
 'NORMANDY': 13,
 'WHITEWOOD': 13,
 'PARKWOOD': 13,
 'CLARKDALE': 13,
 'M L KING BLVD': 13,
 'CLAYBURN': 13,
 'MINDEN': 13,
 'SENECA': 13,
 'CHARLESTON': 12,
 'FLOYD': 12,
 'JOHN C LODGE': 12,
 'OLIVET': 12,
 'TENNESSEE': 12,
 'FILBERT': 12,
 'BELLEVUE': 12,
 'CLIPPERT': 12,
 'MAGNOLIA': 12,
 'KENMOOR': 12,
 'FILER': 12,
 'MARSEILLES': 12,
 'ADAMS AVE': 12,
 'GUNSTON': 12,
 'MELDRUM': 12,
 'PROCTOR': 12,
 'HUNTINGTON': 12,
 'BASSETT': 12,
 'MILWAUKEE': 12,
 'WESTERN': 12,
 'MONTGOMERY': 12,
 'LOVETT': 12,
 'ENGLEWOOD': 11,
 'LABELLE': 11,
 'LORETTO': 11,
 'NASHVILLE': 11,
 'ASHLEY': 11,
 'OGDEN': 11,
 'CEDARLAWN': 11,
 'SPOKANE': 11,
 'FOLEY': 11,
 'SCOVEL PL': 11,
 'SAWYER': 11,
 'JULIAN': 11,
 'SMART': 11,
 'THEODORE': 11,
 'WHITEHILL': 11,
 'OAKDALE': 11,
 'LARCHMONT': 11,
 'BARBARA': 11,
 'HILDALE': 11,
 'AUDUBON': 11,
 'NUERNBERG': 11,
 'LAING': 11,
 'FRONTENAC': 11,
 'WITHERELL': 11,
 'EDSEL FORD': 11,
 'COPLAND': 11,
 'HAROLD': 11,
 'BARLUM': 11,
 'UNDERWOOD': 11,
 'CLARK ST': 11,
 'KING': 11,
 'HALLECK': 10,
 'MARCUS': 10,
 'EVANS': 10,
 'ADELINE ST': 10,
 'DEQUINDRE': 10,
 'DUNDEE': 10,
 'MCKINLEY': 10,
 'MERRICK': 10,
 'LORAINE': 10,
 'MCQUADE': 10,
 'FORTUNE': 10,
 'WHEELER': 10,
 'COLUMBIA': 10,
 'RADCLIFFE': 10,
 'COLLINGHAM': 10,
 'ALDEN': 10,
 'PETERBORO': 10,
 'CONGRESS': 10,
 'GEORGIA': 10,
 'RIAD': 10,
 'HOUSE': 10,
 'DALE': 10,
 'MCLEAN': 10,
 'ELSMERE': 10,
 'MAPLEVIEW': 10,
 'MASON PL': 10,
 'LUTHER': 10,
 'HOYT': 10,
 'SANTA MARIA': 10,
 'ALLONBY': 10,
 'BELLETERRE': 10,
 'ROGERS': 10,
 'MOLENA': 10,
 'CHRISTY': 10,
 'LANCASHIRE': 10,
 'CLIFTON': 10,
 'WENDELL': 10,
 'JOSEPHINE': 9,
 'MCCORMICK': 9,
 'ELMWOOD': 9,
 'CHURCHILL': 9,
 'EWERS': 9,
 'MISSOURI': 9,
 'BERKSHIRE': 9,
 'ORANGELAWN': 9,
 'CHESTER': 9,
 'PETER HUNT': 9,
 'GRINNELL': 9,
 'PORTER': 9,
 'WARING': 9,
 'STAIR': 9,
 'ROOSEVELT': 9,
 'CADET': 9,
 'WEST POINT': 9,
 'BARRETT': 9,
 'PENNINGTON': 9,
 'CHARLES': 9,
 'NORTHWESTERN': 9,
 'WHEELOCK': 9,
 'VIOLETLAWN': 9,
 'GRANDVIEW': 9,
 'SHREWSBURY': 9,
 'LEIDICH': 9,
 'KANE': 9,
 '18TH ST': 9,
 'HUBBARD': 9,
 'MANDERSON': 9,
 'WETHERBY': 9,
 'LEICESTER CT': 9,
 'IOWA': 9,
 'HUBER': 9,
 'DIVISION': 8,
 'EDWARD': 8,
 'LANIER': 8,
 'WALDO': 8,
 'SPRINGLE': 8,
 'MARION': 8,
 'HARNED': 8,
 'LANSDOWNE': 8,
 'EDINBOROUGH': 8,
 'IDAHO': 8,
 'NAUMANN': 8,
 '29TH': 8,
 'STOCKWELL': 8,
 'CHRISTIANCY': 8,
 'HAMILTON': 8,
 'HUMPHREY': 8,
 'HARMON': 8,
 'KIMBERLY CT': 8,
 'GREENSBORO': 8,
 'VERMONT': 8,
 '52ND ST': 8,
 'BEALS': 8,
 'NORTHFIELD': 8,
 'DAWES': 8,
 'FORD': 8,
 'PUTNAM': 8,
 'LINCOLN': 8,
 'MOFFAT': 8,
 'GATESHEAD': 8,
 'MCPHERSON': 8,
 'HAZELTON': 8,
 'FLORENCE': 8,
 'CHAMBERLAIN': 8,
 'KITCHENER': 8,
 'GREUSEL': 8,
 'BRIMSON': 8,
 'MCKINSTRY': 8,
 'ROGGE': 8,
 'DARTMOUTH': 8,
 'WESTMORELAND': 8,
 'PAYTON': 8,
 'GARFIELD': 7,
 'JOHN KRONK': 7,
 'PFENT': 7,
 'ALFRED': 7,
 'WAGER': 7,
 'EUREKA': 7,
 'MELBOURNE': 7,
 'ALMONT': 7,
 'LONGWOOD': 7,
 'MAY': 7,
 'NORWALK': 7,
 'GOODWIN': 7,
 'HENDRIE': 7,
 'BARHAM': 7,
 'RIVERDALE DR': 7,
 'HARRISON': 7,
 'ERSKINE': 7,
 'BENTON': 7,
 'MARGARETA': 7,
 'OAK DR': 7,
 'BORDEAU': 7,
 'GREYFRIARS': 7,
 'BANGOR': 7,
 'DELAWARE': 7,
 'DOROTHY': 7,
 'ST PATRICK': 7,
 'ANNCHESTER': 7,
 'EASTERN PL': 7,
 'PORTLANCE': 7,
 'DAYTON': 7,
 'CATHEDRAL': 7,
 'ENGLESIDE': 7,
 'FRISBEE': 7,
 'GLADYS': 7,
 'MANILA': 7,
 'HARTFORD': 7,
 'PRESTON': 7,
 'WAVENEY': 7,
 'LAWLEY': 7,
 'SPARLING': 7,
 'ARDEN PARK': 7,
 'GREENWAY': 6,
 'WREFORD': 6,
 'CARBONDALE': 6,
 'BRINKER': 6,
 'CALUMET': 6,
 'ST HEDWIG': 6,
 'CASTLETON': 6,
 'MALCOLM': 6,
 'TERRELL': 6,
 'RENO': 6,
 'IRON': 6,
 'VISGER': 6,
 'ADELAIDE ST': 6,
 'PATRICIA': 6,
 'COLONIAL': 6,
 'JAMESON': 6,
 'KARL': 6,
 'CHANDLER': 6,
 'TEMPLE': 6,
 'FIVE POINTS': 6,
 'SUNNYSIDE': 6,
 'CLAYTON': 6,
 'WHITEHEAD': 6,
 'NEWBERN': 6,
 'HANOVER': 6,
 'BRITAIN': 6,
 'ANVIL': 6,
 'MOTOR DRIVE': 6,
 'GLENCO': 6,
 'HONORAH': 6,
 'OMAHA': 6,
 'DUPREY': 6,
 'SHOEMAKER': 6,
 'FOURTH': 6,
 'HARBAUGH': 6,
 'SPARTA': 6,
 'VAN BUREN': 6,
 'WOODLAWN': 6,
 'PELOUZE': 6,
 'KELLER': 6,
 'SHIAWASSEE': 6,
 'HAMMOND': 6,
 'RICHARD': 6,
 'PARKHURST': 6,
 'CLARION': 6,
 'WEAVER': 6,
 'MORLEY': 6,
 'STOCKTON': 6,
 'ST JOHN': 6,
 'ST LAWRENCE': 6,
 'MCDONALD': 6,
 'RAVENSWOOD': 6,
 '51ST ST': 6,
 'MERTON': 6,
 'AURORA': 6,
 'DALRYMPLE': 6,
 'DAILEY CT': 5,
 'AVERY': 5,
 'SOLVAY': 5,
 'GOLDNER': 5,
 'HIBBARD': 5,
 'ALAMEDA ST': 5,
 'MARNE': 5,
 'BEAUFAIT': 5,
 'NORCROSS': 5,
 'NAVAHOE': 5,
 'BESSEMORE': 5,
 'PEERLESS': 5,
 'ELIOT': 5,
 'MEADE': 5,
 'MONROE': 5,
 'DEARBORN': 5,
 'BELDEN': 5,
 'GRUEBNER': 5,
 'SHAFTSBURY': 5,
 'BLAKE': 5,
 'JEROME': 5,
 'BRAINARD': 5,
 'MILTON': 5,
 'SAVERY': 5,
 'EVERTS': 5,
 'GOLDEN GATE': 5,
 'SIRE': 5,
 'BALTIMORE': 5,
 'GROVE': 5,
 'PRINCE HALL DR': 5,
 'EDGETON': 5,
 'EDGEWOOD': 5,
 'MELLON': 5,
 'SUPERIOR': 5,
 'KEELSON DR': 5,
 'DUANE': 5,
 'LOGAN': 5,
 'KIPLING': 5,
 'FREDA': 5,
 'BADGER': 5,
 'PALMETTO': 5,
 'HILL': 5,
 'PRENTIS': 5,
 'GITRE': 5,
 'EAGLE': 5,
 'VASSAR': 5,
 'NORTHROP': 5,
 'CINCINNATI': 5,
 'DIVERSEY': 5,
 'FRANKLIN': 5,
 'CHURCH': 5,
 'WESTFIELD': 5,
 '32ND ST': 5,
 'HILLCREST': 5,
 'STANTON': 5,
 'POST': 5,
 'WINDER': 5,
 ...}

Where were the tickets issued?¶

In [ ]:
# import matplotlib.pyplot as plt
# plt.scatter(x=df_latlons['lon'], y=df_latlons['lat'])
# plt.show()
import plotly.express as px
import pandas as pd
df_latlons.dropna(
    axis=0,
    how='any',
   # thresh=None,
    subset=None,
    inplace=True
)

color_scale = [(0, 'orange'), (1,'red')]

fig = px.scatter_mapbox(df_latlons, 
                        lat="lat", 
                        lon="lon", 
                       # hover_name="Address", 
                        #hover_data=["Address", "Listed"],
                        #color="Listed",
                       # color_continuous_scale=color_scale,
                        #size="Listed",
                        zoom=8, 
                        height=800,
                        width=800)

fig.update_layout(mapbox_style="open-street-map")
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
In [ ]:
#df_fines[['ticket_id', 'disposition', 'compliance', 'compliance_detail', 'collection_status', 'payment_status']]
df_joint.columns
Out[ ]:
Index(['ticket_id', 'agency_name', 'inspector_name', 'violator_name',
       'violation_street_number', 'violation_street_name',
       'violation_zip_code', 'mailing_address_str_number',
       'mailing_address_str_name', 'city', 'state', 'zip_code',
       'non_us_str_code', 'country', 'ticket_issued_date', 'hearing_date',
       'violation_code', 'violation_description', 'disposition', 'fine_amount',
       'admin_fee', 'state_fee', 'late_fee', 'discount_amount',
       'clean_up_cost', 'judgment_amount', 'payment_amount', 'balance_due',
       'payment_date', 'payment_status', 'collection_status',
       'grafitti_status', 'compliance_detail', 'compliance', 'ticket_year',
       'ticket_month', 'ticket_day', 'isMonday', 'isTuesday', 'isWednesday',
       'isThursday', 'isFriday', 'isSaturday', 'isSunday', 'isOwner',
       'address', 'lat', 'lon'],
      dtype='object')

Which addresses recieved the most tickets? (Common offenders)¶

Number of fines by inspector¶

In [ ]:
df_fines['inspector_name'].value_counts()
Out[ ]:
inspector_name
Doetsch, James         1931
Gailes, Orbie J        1781
Legge, Gerald          1739
O'Neal, Claude         1726
Hayes, Billy J         1714
                       ... 
Clark, Marcel             1
Hischke, William          1
Crowder, Michael          1
Thomas, Duane             1
Gibson, Christopher       1
Name: count, Length: 100, dtype: int64
In [ ]:
#inertias = []
#columns = ['lat','lon']

#for i in range(100,250):
#    kmeans = KMeans(n_clusters=i)
#    kmeans.fit(df_joint[columns])
#    inertias.append(kmeans.inertia_)

#plt.plot(range(100,250), inertias, marker='o')
#plt.title('Elbow method')
#plt.xlabel('Number of clusters')
#plt.ylabel('Inertia')
#plt.show()     
In [ ]:
import random


data_for_clustering = df_joint[['lat', 'lon']]


kmeans = KMeans(n_clusters=75)
kmeans.fit(data_for_clustering[['lat', 'lon']]) 



df_joint['cluster'] = kmeans.labels_

payment_rates = df_joint.groupby('cluster')['compliance'].mean().reset_index()
payment_rates = payment_rates.rename(columns={'compliance':'Rate'})
payment_rates.sort_values(by='Rate',ascending=False)

mapa_poligon = folium.Map(data_for_clustering=[df_joint['lat'].mean(), df_joint['lon'].mean()], zoom_start=10)
mapa_points= folium.Map(data_for_clustering=[df_joint['lat'].mean(), df_joint['lon'].mean()], zoom_start=10)


colores_poligon= ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf']
colores_points= ['#' + ''.join([random.choice('0123456789ABCDEF') for j in range(6)]) for i in range(10)]
#poligon_map
for cluster_label in range(75):
    color = colores_points[cluster_label % 10]  
    points = df_joint[kmeans.labels_ == cluster_label][['lat', 'lon']].values.tolist()
    folium.Polygon(locations=points, color=color, fill=True, fill_opacity=0.3).add_to(mapa_poligon)

    center = np.mean(points, axis=0)
    
    folium.Marker(location=[center[0], center[1]],
                  icon=folium.DivIcon(html=f'<div style="font-size: 10pt; color: black;">{cluster_label}</div>')).add_to(mapa_poligon)

#points_map

for lat, lon, cluster in zip(df_joint['lat'], df_joint['lon'], kmeans.labels_):
    folium.CircleMarker(
        location=[lat, lon],
        radius=5,
        color=None,
        fill=True,
        fill_opacity=0.7,
        fill_color= colores_points[cluster%10]
    ).add_to(mapa_points)    
/usr/local/lib/python3.10/dist-packages/sklearn/cluster/_kmeans.py:1416: FutureWarning:

The default value of `n_init` will change from 10 to 'auto' in 1.4. Set the value of `n_init` explicitly to suppress the warning

In [ ]:
mapa_points
Out[ ]:
Make this Notebook Trusted to load map: File -> Trust Notebook
In [ ]:
mapa_poligon
Out[ ]:
Make this Notebook Trusted to load map: File -> Trust Notebook
In [ ]:
payment_rates
Out[ ]:
cluster Rate
0 0 0.080402
1 1 0.069519
2 2 0.067416
3 3 0.103030
4 4 0.142857
... ... ...
70 70 0.060000
71 71 0.062201
72 72 0.146341
73 73 0.000000
74 74 0.117284

75 rows × 2 columns

Decision tree to know if a fine is going to be checked¶

In [ ]:
df_joint['Rate'].max()
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
File /usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py:3790, in Index.get_loc(self, key)
   3789 try:
-> 3790     return self._engine.get_loc(casted_key)
   3791 except KeyError as err:

File index.pyx:152, in pandas._libs.index.IndexEngine.get_loc()

File index.pyx:181, in pandas._libs.index.IndexEngine.get_loc()

File pandas/_libs/hashtable_class_helper.pxi:7080, in pandas._libs.hashtable.PyObjectHashTable.get_item()

File pandas/_libs/hashtable_class_helper.pxi:7088, in pandas._libs.hashtable.PyObjectHashTable.get_item()

KeyError: 'Rate'

The above exception was the direct cause of the following exception:

KeyError                                  Traceback (most recent call last)
Cell In[39], line 1
----> 1 df_joint['Rate'].max()

File /usr/local/lib/python3.10/dist-packages/pandas/core/frame.py:3896, in DataFrame.__getitem__(self, key)
   3894 if self.columns.nlevels > 1:
   3895     return self._getitem_multilevel(key)
-> 3896 indexer = self.columns.get_loc(key)
   3897 if is_integer(indexer):
   3898     indexer = [indexer]

File /usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py:3797, in Index.get_loc(self, key)
   3792     if isinstance(casted_key, slice) or (
   3793         isinstance(casted_key, abc.Iterable)
   3794         and any(isinstance(x, slice) for x in casted_key)
   3795     ):
   3796         raise InvalidIndexError(key)
-> 3797     raise KeyError(key) from err
   3798 except TypeError:
   3799     # If we have a listlike key, _check_indexing_error will raise
   3800     #  InvalidIndexError. Otherwise we fall through and re-raise
   3801     #  the TypeError.
   3802     self._check_indexing_error(key)

KeyError: 'Rate'
In [ ]:
print(kmeans.get_params)
<bound method BaseEstimator.get_params of KMeans(n_clusters=75)>
In [ ]:
from sklearn.tree import export_graphviz


clf = DecisionTreeClassifier()

dtv = df_joint[['fine_amount','late_fee','discount_amount','isMonday', 'isTuesday', 'isWednesday',
       'isThursday', 'isFriday', 'isSaturday', 'isSunday', 'isOwner']]

payStatus = df_joint[['compliance']]

train_x, test_x, train_y, test_y  = train_test_split(dtv,payStatus,test_size=0.3,random_state=1)


clf = clf.fit(train_x,train_y)

prediction = clf.predict(test_x)

print("Accuracy:",metrics.accuracy_score(test_y, prediction))

dot_data = StringIO()
export_graphviz(clf, out_file=dot_data,  
                filled=True, rounded=True,
                special_characters=True,feature_names = dtv.columns,class_names=['0','1'])
graph = pydotplus.graph_from_dot_data(dot_data.getvalue())  
graph.write_png('finesTree.png')
Image(graph.create_png())
Accuracy: 0.9152789950335962
Out[ ]:
No description has been provided for this image

Testing playground¶

In [ ]:
#Getting the different values and descriptions
numberOfTimes = df_fines['violation_description'].value_counts()
number = pd.DataFrame({'description':numberOfTimes.index,'times':numberOfTimes.values}).head(n=15) #e just want the first 15 because are the most relevant
plt.hist2d(number['description'],number['times'],bins= (15,15))
# plt.colorbar()
pl.show()
fin
 
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/home/susi/universidad/dianamarca/Data_Science/Project/DataScienceOnDetroit/project1.ipynb Cell 43 line 4
      <a href='vscode-notebook-cell:/home/susi/universidad/dianamarca/Data_Science/Project/DataScienceOnDetroit/project1.ipynb#X54sZmlsZQ%3D%3D?line=1'>2</a> numberOfTimes = df_fines['violation_description'].value_counts()
      <a href='vscode-notebook-cell:/home/susi/universidad/dianamarca/Data_Science/Project/DataScienceOnDetroit/project1.ipynb#X54sZmlsZQ%3D%3D?line=2'>3</a> number = pd.DataFrame({'description':numberOfTimes.index,'times':numberOfTimes.values}).head(n=15) #e just want the first 15 because are the most relevant
----> <a href='vscode-notebook-cell:/home/susi/universidad/dianamarca/Data_Science/Project/DataScienceOnDetroit/project1.ipynb#X54sZmlsZQ%3D%3D?line=3'>4</a> plt.hist2d(number['description'],number['times'],bins= (15,15))
      <a href='vscode-notebook-cell:/home/susi/universidad/dianamarca/Data_Science/Project/DataScienceOnDetroit/project1.ipynb#X54sZmlsZQ%3D%3D?line=4'>5</a> # plt.colorbar()
      <a href='vscode-notebook-cell:/home/susi/universidad/dianamarca/Data_Science/Project/DataScienceOnDetroit/project1.ipynb#X54sZmlsZQ%3D%3D?line=5'>6</a> pl.show()

File ~/.local/lib/python3.10/site-packages/matplotlib/pyplot.py:3283, in hist2d(x, y, bins, range, density, weights, cmin, cmax, data, **kwargs)
   3269 @_copy_docstring_and_deprecators(Axes.hist2d)
   3270 def hist2d(
   3271     x: ArrayLike,
   (...)
   3281     **kwargs,
   3282 ) -> tuple[np.ndarray, np.ndarray, np.ndarray, QuadMesh]:
-> 3283     __ret = gca().hist2d(
   3284         x,
   3285         y,
   3286         bins=bins,
   3287         range=range,
   3288         density=density,
   3289         weights=weights,
   3290         cmin=cmin,
   3291         cmax=cmax,
   3292         **({"data": data} if data is not None else {}),
   3293         **kwargs,
   3294     )
   3295     sci(__ret[-1])
   3296     return __ret

File ~/.local/lib/python3.10/site-packages/matplotlib/__init__.py:1465, in _preprocess_data.<locals>.inner(ax, data, *args, **kwargs)
   1462 @functools.wraps(func)
   1463 def inner(ax, *args, data=None, **kwargs):
   1464     if data is None:
-> 1465         return func(ax, *map(sanitize_sequence, args), **kwargs)
   1467     bound = new_sig.bind(ax, *args, **kwargs)
   1468     auto_label = (bound.arguments.get(label_namer)
   1469                   or bound.kwargs.get(label_namer))

File ~/.local/lib/python3.10/site-packages/matplotlib/axes/_axes.py:7191, in Axes.hist2d(self, x, y, bins, range, density, weights, cmin, cmax, **kwargs)
   7098 @_preprocess_data(replace_names=["x", "y", "weights"])
   7099 @_docstring.dedent_interpd
   7100 def hist2d(self, x, y, bins=10, range=None, density=False, weights=None,
   7101            cmin=None, cmax=None, **kwargs):
   7102     """
   7103     Make a 2D histogram plot.
   7104 
   (...)
   7188       `.colors.PowerNorm`.
   7189     """
-> 7191     h, xedges, yedges = np.histogram2d(x, y, bins=bins, range=range,
   7192                                        density=density, weights=weights)
   7194     if cmin is not None:
   7195         h[h < cmin] = None

File ~/.local/lib/python3.10/site-packages/numpy/lib/twodim_base.py:808, in histogram2d(x, y, bins, range, density, weights)
    806     xedges = yedges = asarray(bins)
    807     bins = [xedges, yedges]
--> 808 hist, edges = histogramdd([x, y], bins, range, density, weights)
    809 return hist, edges[0], edges[1]

File ~/.local/lib/python3.10/site-packages/numpy/lib/histograms.py:1003, in histogramdd(sample, bins, range, density, weights)
   1000 if bins[i] < 1:
   1001     raise ValueError(
   1002         '`bins[{}]` must be positive, when an integer'.format(i))
-> 1003 smin, smax = _get_outer_edges(sample[:,i], range[i])
   1004 try:
   1005     n = operator.index(bins[i])

File ~/.local/lib/python3.10/site-packages/numpy/lib/histograms.py:322, in _get_outer_edges(a, range)
    320 else:
    321     first_edge, last_edge = a.min(), a.max()
--> 322     if not (np.isfinite(first_edge) and np.isfinite(last_edge)):
    323         raise ValueError(
    324             "autodetected range of [{}, {}] is not finite".format(first_edge, last_edge))
    326 # expand empty range to avoid divide by zero

TypeError: ufunc 'isfinite' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''
No description has been provided for this image
In [ ]:
#correlations = df_fines.corr()
#plt.figure(figsize=(10,10))
#sns.heatmap(correlations[1:10],annot=True,linewidths=0.05)
#sns.heatmap(correlations[2:20],annot=True,linewidths=0.05)